【问题标题】:jQuery jTable edit and add popup divs Save button on enter pressjQuery jTable 编辑和添加弹出 div 输入时保存按钮
【发布时间】:2014-01-19 21:54:17
【问题描述】:

当我在 jQuery jTable 中编辑或添加新帖子时,我希望在我完成后按 enter jquery 点击保存按钮!

我正在尝试这样的事情,但它不起作用!

$("#jtable-create-form > div > div > input").keyup(function(e) {
    if(e.keyCode == 13){
       $("#AddRecordDialogSaveButton").click();
    }
});

html结构是这样的:

<div id="jtable-create-form"> // poput div
  <div> //form wraper div
     <div> //input wraper div
        <input>
     </div>
  </div>
</div>

但是当我尝试提醒$("#jtable-create-form &gt; div &gt; div &gt; input").val()时,我得到undefined

任何人都试过这个,或者可能看到解决方案!?

【问题讨论】:

    标签: jquery html jquery-jtable


    【解决方案1】:
    $("#jtable-create-form input").keypress(function(e) {
        if(e.which == 13) {
           $("#AddRecordDialogSaveButton").trigger('click');
        }
    });
    

    【讨论】:

    • 我试过这个,但它不起作用,我在 document.ready $(".jtable-toolbar-item-add-record").click(function(){ 控制台上尝试了这个代码.log($("#jtable-edit-form").find("input").val()); });但我得到的只是undefined!我觉得有问题,我就是不知道怎么解决!
    • 你能显示完整的 HTML 代码吗?我在 HTML #AddRecordDialogSaveButton 中看不到。 jsfiddle.net/phpowl/F3chc
    • 我无法显示 HTML,因为表格和弹出 div 是由 jQuery jTable 插件生成和创建的。我猜我真正要问的是如何覆盖保存按钮
    【解决方案2】:

    我发现以下似乎可行:

    $('#tablediv').jtable('load', {}, function(data) {
    
        $(document).on('keydown', '#jtable-create-form input', function(ev) {
            if(ev.which === 13) {
                $("#AddRecordDialogSaveButton").trigger('click');
            }
        });
    
        $(document).on('keydown', '#jtable-edit-form input', function(ev) {
            if(ev.which === 13) {
                $("#EditDialogSaveButton").trigger('click');
            }
        });
    
    });//end load form
    

    (但对于父>子表不是)。

    说明:

    我指定了一个回调函数(表加载后),它确保在将 keydown 处理程序连接到它们之前存在编辑和创建对话框。

    然后,仅当焦点位于作为适当表单的子项的输入中时,我才附加一个 keydown 处理程序。

    请注意,我附加了两个处理程序,一个附加到创建表单,一个附加到编辑表单,并且我特别注意键代码 13,它是 ENTER 键。

    如上所述,唯一的问题似乎是,如果您有 parent>child jtables,则按 Enter 键似乎会触发 null 父级和子级的创建/更新,这是完全不可接受的......但如果你只有单级 jtables 这个代码应该可以工作。

    (仅在 chrome 中测试)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-10
      • 2019-05-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-05-10
      相关资源
      最近更新 更多