I have a webpage that I need to dynamically set 4 radcombobox onclientselectedindexchanged events to a javascript function, however when the combobox index is changed the event does not get fired, can someone help me please?
here is the javascript:
here is the javascript:
<script type="text/javascript"> var cbxCSI = new Array(4); var rcbCSI = new Array(4); function OnLoad() { var onLoadCSIs = ['<%=objBidder.BidderCSI1%>', '<%=objBidder.BidderCSI2%>', '<%=objBidder.BidderCSI3%>', '<%=objBidder.BidderCSI4%>']; var rbWITHOUT = document.getElementById("rbWITHOUT"); var lblWithoutCSI = document.getElementById("lblWithoutCSI"); cbxCSI[0] = document.getElementById("cbxCSI1"); cbxCSI[1] = document.getElementById("cbxCSI2"); cbxCSI[2] = document.getElementById("cbxCSI3"); cbxCSI[3] = document.getElementById("cbxCSI4"); rcbCSI[0] = $find("clsCSIDivision_rcbClassifier"); rcbCSI[1] = $find("clsCSIDivision1_rcbClassifier"); rcbCSI[2] = $find("clsCSIDivision2_rcbClassifier"); rcbCSI[3] = $find("clsCSIDivision3_rcbClassifier"); rcbCSI[0].onclientselectedindexchanged = 'OnClientSelectedIndexChanged'; rcbCSI[1].onclientselectedindexchanged = 'OnClientSelectedIndexChanged'; rcbCSI[2].onclientselectedindexchanged = 'OnClientSelectedIndexChanged'; rcbCSI[3].onclientselectedindexchanged = 'OnClientSelectedIndexChanged'; function CheckWithoutStatus() { var allCbxUnchecked = true; for (i = 0; i < cbxCSI.length; i++) { if (cbxCSI[i].checked == true) allCbxUnchecked = false; } if (allCbxUnchecked == true) { lblWithoutCSI.disabled = ""; rbWITHOUT.checked = true; } } if (rbWITHOUT.checked == true) { for (i = 0; i < cbxCSI.length; i++) { if (rcbCSI[i].get_selectedItem().get_value() != "") { rcbCSI[i].disabled = true; } else { cbxCSI[i].disabled = true; } cbxCSI[i].checked = false; } } else { for (i = 0; i < cbxCSI.length; i++) { if (rcbCSI[i].get_selectedItem.get_value() != "") { rcbCSI[i].disabled = !cbxCSI[i].checked; } else { cbxCSI[i].disabled = true; } } CheckWithoutStatus(); } } function OnClientSelectedIndexChanged(sender, eventArgs) { RefreshCsiOptions(sender); } function RefreshCsiOptions(sender) { switch (sender.type) { case "radio": if (sender.checked == true) { for (i = 0; i < cbxCSI.length; i++) { if (rcbCSI[i].get_selectedItem().get_value() != "") { rcbCSI[i].disabled = true; } else { cbxCSI[i].disabled = true; } cbxCSI[i].checked = false; } lblWithoutCSI.disabled = ""; } case "checkbox": var cbxNumber = sender.id.substr(6, 1); if (sender.checked == true) { rcbCSI[cbxNumber - 1].disabled = false lblWithoutCSI.disabled = "disabled"; rbWITHOUT.checked = false; } else { rcbCSI[cbxNumber - 1].disabled = true; } CheckWithoutStatus(); case "select-one": var rcbNumber = sender.id.substr(14, 1); if (rcbNumber == "_") rcbNumber = "0"; var rcbValue = rcbCSI[rcbNumber].get_selectedItem().get_value(); var radcb = $find('CSI' + rcbNumber + '_value'); var item = radcb.findItemByText(rcbValue); if (item) {item.select();} if (rcbValue != "") { cbxCSI[rcbNumber].disabled = false; cbxCSI[rcbNumber].checked = true; if (rbWITHOUT.checked == true) rbWITHOUT.checked = false; } else { cbxCSI[rcbNumber].disabled = true; cbxCSI[rcbNumber].checked = false; CheckWithoutStatus(); } default: //alert(sender.type); break; } } </script>