我有一個複選框,裏面有一個複選框。在.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