[英]jQuery modal dialog opens multiple times
您能幫我了解為什么我的JavaScript函數多次打開模式彈出窗口嗎? 因此,如果我第一次單擊該鏈接,則出現模態,然后將其關閉並再次打開-如果要關閉它,則應按兩次Cancel,等等。
這是我的代碼:
<script type="text/javascript">
$(function () {
$('.modal-class').click(function () {
$("#modal-popup").load(this.href, function () {
var target = document.getElementsByClassName("modal-popup")
$(target).dialog({
autoOpen: true,
closeOnEscape: true,
width: 400,
resizable: false,
title: 'Login Form',
modal: true,
buttons: {
Login: function() {
// perform login
$.post("@Url.Action("Login", "User")",
{
username: $('#Email').val(),
password: $('#Password').val()
},
function() {
$('.modal-popup').dialog("close");
$('#main').load("@Url.Action("Index", "User")",
{
uniqueName: $('#Email').val()
});
});
},
Cancel: function () {
$(this).dialog("close");
}
}
});
})
return false;
});
});
您只需初始化一次模型。 只要觸發click事件,就可以執行此操作。 第一次初始化后,每次執行以下行以打開對話框。
$(target).dialog("open");
另外,您應該將選項“ autoOpen”設置為false。 否則,頁面加載時將打開模式模式。
也許在沒有您的JavaScript代碼(框架的一部分)的情況下,點擊即可打開模態? 您也有html代碼示例嗎?
嘗試在此javascript代碼的第一行添加e.PreventDefault()
,看看會發生什么。
您需要在modal-popup div上放置一個style ='display:none'。 我很確定這是.dialog(“ open”)操作的屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.