[英]Confirm Jquery UI Dialog Prompt on Enter Key
我已經嘗試了以下堆棧中建議的技術,但沒有運氣:
我的代碼必須關閉一些東西。 登錄時,我有一個免責聲明,警告用戶該網站內的信息是保密的。 我想繼續,所有用戶要做的就是點擊回車鍵。 這是我的原始代碼(我已經包含瀏覽器檢查):
$("#loginForm").submit(function (e) {
e.preventDefault();
if ($.browser.msie) {
$("#dialog-confirm")
.dialog({
resizable: false,
height: 300,
width: 550,
modal: true,
buttons: {
"Continue": function (e) {
$("#loginForm").unbind('submit').submit(),
$(this).dialog("close"),
$("#loginForm").submit();
$("#btnLogin").click();
},
Cancel: function (e) {
e.preventDefault();
$(this).dialog("close");
}
}
})
}
else {
$("#dialog-browser")
.dialog({
resizable: false,
height: 220,
width: 480,
modal: true,
buttons: {
"Close": function (e) {
e.preventDefault();
$(this).dialog("close");
}
}
})
};
});
現在這里是我的代碼與keyup命令:
$("#loginForm").submit(function (e) {
e.preventDefault();
if ($.browser.msie) {
$("#dialog-confirm")
.dialog({
resizable: false,
height: 300,
width: 550,
modal: true,
buttons: {
"Continue": function (e) {
$("#loginForm").unbind('submit').submit(),
$(this).dialog("close"),
$("#loginForm").submit();
$("#btnLogin").click();
},
Cancel: function (e) {
e.preventDefault();
$(this).dialog("close");
}
},
HERE>>> open: function() {
$("#dialog-confirm").keypress(function(e) {
if (e.keyCode == $.ui.keyCode.ENTER) {
$("#loginForm").unbind('submit').submit(),
$(this).dialog("close"),
$("#loginForm").submit();
$("#btnLogin").click();
}
});
}
})
}
else {
$("#dialog-browser")
.dialog({
resizable: false,
height: 220,
width: 480,
modal: true,
buttons: {
"Close": function (e) {
e.preventDefault();
$(this).dialog("close");
}
}
})
};
});
不幸的是,這不適合我,我不能為我的生活弄清楚為什么? 如果有人能看到問題所在,我將非常感激!
謝謝!!
我把它放在一邊大部分時間,只是重新審視它。 我搞定了! 這是我的代碼:
$("#loginForm").submit(function (e) {
e.preventDefault();
if ($.browser.msie) {
$("#dialog-confirm")
.dialog({
resizable: false,
height: 300,
width: 550,
modal: true,
buttons: {
"Continue": {
text: "Continue",
id: "btnContinue",
click: function (e) {
$("#loginForm").unbind('submit').submit(),
$(this).dialog("close"),
$("#loginForm").submit();
$("#btnLogin").click();
}
},
Cancel: function (e) {
e.preventDefault();
$(this).dialog("close");
}
},
open: function () {
$(document).keydown(function (event) {
if (event.keyCode == 13) {
$("#btnContinue").click();
}
});
}
})
}
基本上,我在對話框中分配了一個ID值,而不是$(“#dialog-confirm”)。keydown我使用了$(document).keydown。 由於該功能僅在對話框打開后設置,因此不一定會影響頁面的其余部分。 在keydown函數內部,我按下了我通過ID調用的繼續按鈕。
感謝大家的幫助。
試試這個:
$("#dialog-confirm").keydown(function (event) {
if (event.keyCode == 13) {
// Submit it
}
});
如果對話框中沒有任何要獲得焦點的元素(即:輸入元素),您可以嘗試此問題中建議的方法: jquery-ui對話框:在對話框中創建一個默認操作按鈕(Enter鍵)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.