我正在构建一个asp.net/C#应用程序,其中包含几个正确/错误问题以及一些选择题。我已经为此编写了代码,并且由于某种原因,单击复选框时onclick()事件未触发。这已确认在另一个应用程序中工作;我不明白为什么它在这里不起作用。请参阅下面的相关代码。我将此代码与已知的工作代码并排使用,并且找不到任何异常。有谁知道为什么它不起作用?
<script type="text/javascript">
function ChkQuestion1(obj) {
var chk1a = document.getElementById("<%=chkFalse1.ClientID %>");
var chk1b = document.getElementById("<%=chkTrue1.ClientID %>");
if (obj.checked == true) {
chk1a.checked = false;
chk1b.checked = false;
obj.checked = true;
}
}
function ClientValidation1(source, arguments) {
var chka = document.getElementById("<%=chkFalse1.ClientID%>");
var chkb = document.getElementById("<%=chkTrue1.ClientID%>");
if (chka.checked == false && chkb.checked == false) {
arguments.IsValid = false;
}
}
</script>
<tr>
<td valign="top">1.</td>
<td width="70px" valign="top">
<asp:CheckBox ID="chkTrue1" runat="server" Text=" " onclick="ChkQuestion1(this)" />
<asp:Label ID="lblTrue1" runat="server" Text="True"></asp:Label></td>
<td width="90px" valign="top">
<asp:CheckBox ID="chkFalse1" runat="server" Text=" " onclick="ChkQuestion1(this)" />
<asp:Label ID="lblFalse1" runat="server" Text="False"></asp:Label>
</td>
<td>
<asp:Label ID="lblP1" runat="server" Text="This is a test True/False Question."></asp:Label>
<asp:CustomValidator ID="cvTwo" runat="server" ErrorMessage="Please select correct answer true/false." ToolTip="Please select correct answer true/false." ForeColor="Red" ValidationGroup="Employee" ClientValidationFunction="ClientValidation1">*</asp:CustomValidator>
</td>
</tr>