确认jQuery UI的对话框中输入键提示(Confirm Jquery UI Dialog Pro

2019-09-19 21:36发布

我试着在下面的堆栈答案没有运气建议的技巧:

在提交jQuery UI的对话框<回车>

一定有什么关我的代码。 在登录时,我有一个弹出警告,该网站中找到的信息是保密的用户一个声明。 我想它,这样继续下去,所有的用户所要做的就是按下回车键。 这里是我的原代码(我已经包括浏览器检查):

  $("#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");
                }
            }
        })
    };
});

这不幸地不是为我工作,我不能为我的生命弄清楚为什么? 如果任何人都可以看到的问题是,我会万分感谢!

谢谢!!

Answer 1:

我把这个预留了最多的一天,只是重新它。 我得到它的工作! 这里是我的代码:

$("#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值和,而不是$(“#对话,确认”)的keydown我用的$(document).keydown。 由于功能设置打开的对话框后,才,也不一定会影响我的网页的其余部分。 里面的keydown功能,我把它打的继续按钮,我的ID叫出来。

感谢大家的帮助。



Answer 2:

尝试使用这样的:

$("#dialog-confirm").keydown(function (event) {
        if (event.keyCode == 13) {
            // Submit it
        }
    });


Answer 3:

如果没有对话,将得到重点的任何元素(即:输入元素),你可以尝试的办法在这个问题建议: jQuery的用户界面对话框:做一个按钮,在对话框中的默认操作(回车键)



文章来源: Confirm Jquery UI Dialog Prompt on Enter Key