我試圖綁定一個按鍵(「輸入」)來觸發一個jQuery模態對象中的函數。在下面的代碼中,我想在檢測到按鍵事件時觸發$(this).dialog(「login」)。但是,似乎我無法調用self.dialog(「登錄」)。我看着這個錯誤的方式嗎?jQuery UI模式問題
$("#login-dialog").dialog({
autoOpen: false,
height: 250,
width: 350,
modal: true,
open: function() {
var self = $(this);
$("#login-dialog").load("/accounts/login/", function() {
$("#id_username").focus()
.keypress(function(event) {
if (event.which == 13) {
event.preventDefault();
self.dialog("login");
}
});
});
},
buttons: {
close: function() {
$(this).dialog("close");
},
login: function() {
$.ajax({
type: "POST",
url: "/accounts/login/",
data: $("#login-form").serialize(),
success: function(data) {
var errors = $(data).find("#login-error").val();
if (errors) {
$("#error-message").replaceWith("<p class='error'>" + "Your username and password didn't match" + "</p>");
} else {
window.location = "/builder";
}
}
});
}
}
});
啊,多麼愚蠢的我 - 我應該知道。感謝您的協助! – Beor