我正在嘗試使用JavaScript與ASP.NET Web窗體進行簡單的彈出窗口。Modal在JavaScript中彈出不起作用
我有下面的代碼:
<%@ Register Src="~/Controls/BankInformation.ascx" TagName="BankInformation" TagPrefix="ABS" %>
<script type="text/javascript">
$(document).ready(function() {
var bankInformation = $('#<%=bankInformation.ClientID%>');
var sameAsMerchantBankCheckbox = $('#<%=chkSameAsMerchantBank.ClientID%>');
function OpenDirectDebitDialog(dialogID) {
$("#" + dialogID).modal();
}
function ValidateAndCloseDirectDebitDialog(validationGroup, dialogID) {
var pageValid = Page_ClientValidate(validationGroup);
if (pageValid)
$("#" + dialogID).modal("hide");
}
$(sameAsMerchantBankCheckbox).change(function() {
OpenDirectDebitDialog(bankInformation);
});
});
</script>
<asp:CheckBox runat="server" ID="chkDirectDebit" />
<asp:Label runat="server" AssociatedControlID="chkSameAsMerchantBank" ID="txtDirectDebit" meta:resourcekey="lblDirectDebit"></asp:Label>
<asp:CheckBox runat="server" ID="chkSameAsMerchantBank" AutoPostBack="True" Checked="True" />
<asp:Label runat="server" AssociatedControlID="txtSameAsMerchantBank" ID="txtSameAsMerchantBank" meta:resourcekey="lblSameAsMerchantBank"></asp:Label>
<div id="bankInfoDialog" runat="server" class="modal hide fade" tabindex="-1" role="dialog" aria-hidden="true">
<ABS:BankInformation runat="server" ID="bankInformation" />
</div>
在取消chkSameAsMerchantBank複選框事件應激發和OpenDirectDebitDialog功能應該被調用。但所有這一切發生的頁面刷新(自動回發我猜)。瀏覽器控制檯沒有錯誤或任何內容。 有人看到我在做錯嗎?我是否可以像這樣在模態上調用隱藏窗體?
你必須使用'ClienID'。 –
Jquery選擇器中使用的ID是錯誤的。嘗試使用「chkSameAsMerchantBank」作爲ID像$(chkSameAsMerchantBank).change(函數().... – DfrDkn
@DfrDkn哦對不起我的錯誤,我錯過了我的問題中的代碼行,但我確實有它。像這樣:var sameAsMerchantBankCheckbox = $('#<%= chkSameAsMerchantBank.ClientID%>');我會立即添加它的問題 –