我已在aspx文件中为复选框列表创建了自定义验证,如
<asp:UpdatePanel ID="pnlUpdateAgency" runat="server">
....
....
<script type="text/javascript">
function validateCheckbox(sender, e) {
try {
e.IsValid = false;
var checkboxlist = document.getElementById('chklLineOfAuthority');
var inputlist = checkboxlist.getElementsByTagName('input');
for (var i = 0; i < inputlist.length; i++) {
if (inputlist[i].type == 'checkbox')
if (inputlist[i].checked) {
e.IsValid = true;
break;
}
}
}
catch (ex) {
alert(ex.Message);
}
}
</script>
...
...
<asp:CheckBoxList ID="chklLineOfAuthority" RepeatColumns="3" RepeatLayout="Table"
RepeatDirection="Horizontal" AutoPostBack="false" CausesValidation="false"
runat="server">
</asp:CheckBoxList>
<asp:CustomValidator ID="CustomValidator1" runat="server"
ErrorMessage="Please select at least one option"
ClientValidationFunction="validateCheckbox"
ForeColor="Red" />
...
...
</asp:UpdatePanel>
现在问题是自定义验证在更新面板中无效。