Crear un picklist multievaluado
crmForm.all.new_picklist.multiple = true;
/*
Checkbox style Multi-Select Picklist
author: Jim Wang @ January 2009
http://jianwang.blogspot.com
*/
// PL - the picklist attribute; PLV - used to save selected picklist values
var PL = crmForm.all.new_picklist;
var PLV = crmForm.all.new_picklistvalue;
if( PL != null && PLV != null ) {
PL.style.display = "none";
PLV.style.display = "none";
window.document.all.new_picklistvalue_c.style.visibility = "hidden";
// Create a DIV container
var addDiv = document.createElement("<div style='overflow-y:auto; height:80px; border:1px #6699cc solid; background-color:#ffffff;' />");
PL.parentNode.appendChild(addDiv);
// Initialise checkbox controls
for( var i = 1; i < PL.options.length; i++ ) {
var pOption = PL.options[i];
if( !IsChecked( pOption.text ) )
var addInput = document.createElement("<input type='checkbox' style='border:none;width:25px; align:left;' />" );
else
var addInput = document.createElement("<input type='checkbox' checked='checked' style='border:none; width:25px; align:left;' />" );
var addLabel = document.createElement("<label />");
addLabel.innerText = pOption.text;
var addBr = document.createElement(""); //it's a 'br' flag
PL.nextSibling.appendChild(addInput);
PL.nextSibling.appendChild(addLabel);
PL.nextSibling.appendChild(addBr);
}
// Check if it is selected
function IsChecked( pText ) {
if(PLV.value != "") {
var PLVT = PLV.value.split("||");
for( var i = 0; i < PLVT.length; i++ ) {
if( PLVT[i] == pText )
return true;
}
}
return false;
}
// Save the selected text, this filed can also be used in Advanced Find
crmForm.attachEvent( "onsave" , OnSave);
function OnSave() {
PLV.value = "";
var getInput = PL.nextSibling.getElementsByTagName("input");
for( var i = 0; i < getInput.length; i++ ) {
if( getInput[i].checked) {
PLV.value += getInput[i].nextSibling.innerText + "||";
}
}
}
}
No hay comentarios:
Publicar un comentario