Hi ALL,
I have done multiple check box selection inside the Radcombobox using Javascript Please have one look it may help you in your project:
JAVASCRIPT:
<script type="text/javascript">
function onCheckBoxClickClass(chk, combo) {
var combo;
if (combo == 'rcbClassGroup') {
combo = $find("<%= rcbClassGroup.ClientID %>");
}
cancelDropDownClosing = true;
//holds the text of all checked items
var text = "";
//holds the values of all checked items
var values = "";
//get the collection of all items
var items = combo.get_items();
//enumerate all items
for (var i = 0; i < items.get_count(); i++) {
var item = items.getItem(i);
//get the checkbox element of the current item
var chkMultipleSelectclass = $get(combo.get_id() + "_i" + i + "_chkMultipleSelectclass");
if (chkMultipleSelectclass.checked) {
text += item.get_text() + ",";
values += item.get_value() + ",";
}
}
//remove the last comma from the string
text = removeLastComma(text);
values = removeLastComma(values);
if (text.length > 0) {
//set the text of the combobox
combo.set_text(text);
}
else {
//all checkboxes are unchecked
//so reset the controls
combo.set_text("");
}
}
var cancelDropDownClosing = false;
function removeLastComma(str) {
return str.replace(/,$/, "");
}
function StopPropagation(e) {
//cancel bubbling
e.cancelBubble = true;
if (e.stopPropagation) {
e.stopPropagation();
}
}
function onDropDownClosing() {
cancelDropDownClosing = false;
}
function selectAllNodes(chk, combo, chkItem, ChkNone) {
var combo;
var combobox;
if (combo == 'rcbClassGroup') {
combobox = $find('<%=rcbClassGroup.ClientID %>');
}
var nestedCheckBox = combobox.get_items()._array;
for (var i = 0; i < nestedCheckBox.length; i++) {
var chk1 = $get(combobox.get_id() + "_i" + i + "_" + chkItem);
chk1.checked = chk.checked;
}
if (chk.checked && combo == 'rcbClassGroup')
onCheckBoxClickClass(chk, combo);
if (ChkNone != null) {
var chkNone = $get(combobox.get_id() + "_Header_" + ChkNone);
if (chkNone.checked)
chkNone.checked = false;
}
if (!chk.checked)
combobox.set_text("");
}
</script>
HTML:
Let me know if any issue.
Thanks,
Abhishek K