如何通过[id * ="按钮名称"]来关注按钮

时间:2014-09-08 13:02:58

标签: javascript jquery asp.net

我正在尝试将注意力集中在一个带有模态的按钮上,我使用这行代码成功完成了这个过程:

$("[id*=btnAddEditExecutive]").focus();

问题在于,只要用户点击文本框并点击($("[id*=btnAddEditExecutive]")),就会失去焦点。

所以我试图使用:

document.getElementById("[id*=btnAddEditExecutive]").focus();

但它不起作用。

请帮忙!谢谢!

编辑: 我已经相应地编辑了我的代码它仍然无效。

 $("#addEditExecutive").dialog({
            modal: true,
        width: 800,
        appendTo: "form",
        open: function () {
            $(this).keypress(function (e) {
                if (e.which == 13) { // the enter key
                    $("[id*=btnAddEditExecutive]").click(function () {
                        // do stuff
                    })
                }
            });
},
        buttons: {
            "Add/Edit Executive Information": function () {

                $("[id*=btnAddEditExecutive]").click();
            },
            "Cancel": function () {
                  if (confirm("Are you sure you want to cancel ?")) {
                    //code if yes
                    $(this).dialog("close");
                }

            }
        },

3 个答案:

答案 0 :(得分:1)

如果您希望在单击回车键时单击按钮 -

$('<your selector>').keypress(function (e) {
  if (e.which == 13) { // the enter key
    $('[id*=btnAddEditExecutive]').click(function() {
        // do stuff
    })
  }
});

答案 1 :(得分:0)

用这行代码解决了它:

            $(this).parent().find('.ui-dialog-buttonpane button:first').focus();
            $(this).keypress(function (e) {
                if (e.keyCode == $.ui.keyCode.ENTER) {
                    $("[id*=btnAddEditExecutive]").click();
                    return false;
                }
            });

答案 2 :(得分:-2)

将您的代码更改为此内容 - $('div[id=nameid]').focus(); 或者(如果不起作用)做 - if ($('div').attr('id') == 'nameid') { do something };