我有一个复选框,里面有一个复选框。在.NET中继器内的复选框上触发JQuery事件
<tr class="datarow">
<td style="display: none">
<asp:HiddenField runat="server" ID="hfPortalUserId" Value='<%# Eval("portalUserId") %>' />
</td>
<td>
<asp:TextBox ID="tbUserName" runat="server" Enabled="false" Text='<%# Eval("portalCommonName") %>' Width="98%"></asp:TextBox>
</td>
<td>
<asp:CheckBox ID="chkActive" Enabled="false" runat="server" Checked='<%# IsPortalUserActive((DateTime)Eval("portalUserInactive")) %>' />
</td>
<td>
<asp:CheckBox ID="chkEmployee" Enabled="false" runat="server" Checked='<%# IsEmployee((int)Eval("portalUserTypeId")) %>' />
</td>
<td class="checkadmin">
<asp:CheckBox ID="chkAdmin" Enabled="false" runat="server" Checked='<%# IsAdministrator((int)Eval("siteSecurityRoleId")) %>' CssClass="chkadmin" />
</td>
<td>
<asp:DropDownList ID="ddlUserClient" Enabled="false" runat="server" Width="98%" ></asp:DropDownList>
<asp:HiddenField runat="server" ID="hfClientId" Value='<%#Eval ("clientId") %>' />
</td>
<td>
<asp:TextBox ID="tbEmail" runat="server" Enabled="false" Text='<%# Eval("portalEmail") %>' Width="98%" AutoCompleteType="None"></asp:TextBox>
</td>
<td>
<asp:TextBox ID="tbPassword" runat="server" Enabled="false" Width="98%" AutoCompleteType="None" ></asp:TextBox>
<asp:TextBoxWatermarkExtender ID="wmPass" runat="server" TargetControlID="tbPassword" WatermarkText="Enter new Password"></asp:TextBoxWatermarkExtender>
</td>
<td>
<asp:Panel ID="pnlControls" runat="server" Visible="true">
<asp:ImageButton ID="btnEdit" ImageUrl="~/Images/Management/EditDocument_20x20.png" runat="server" ToolTip="Update User" CommandName="edit" CausesValidation="false" />
<asp:ImageButton ID="btnDelete" ImageUrl="~/Images/Management/Delete_black_20x20.png" runat="server" CommandName="delete" ToolTip="Mark User Inactive" CausesValidation="false" OnClientClick="return confirm('Are you sure you would like to delete this user');" />
</asp:Panel>
</td>
</tr>
当控件呈现时,控件被禁用,并且当单击编辑按钮时,该行的控件被启用。我试图使用JQuery选择器来捕获管理复选框点击事件和弹出和警告框。
这里是jQuery代码
$("input[id^=BodyLeft_rptUsers_chkAdmin]").change(function() {
alert('Event Fired');
if ($(this).is(':checked')) {
alert('You are about to give administrator privileges. Are you sure?');
}
});
如果我使用IE浏览器的开发工具和页面后运行此脚本渲染,它的工作原理,但在其他事件不火而没有警告框。
它落在哪里$(“input [id^= BodyLeft_rptUsers_chkAdmin]”)捕获所有元素?我看到复选框上的更改事件的问题也许尝试onclick。 – Daniel 2012-02-02 17:31:14