【问题标题】:Input text and button field does not work in firefox输入文本和按钮字段在 Firefox 中不起作用
【发布时间】:2012-07-30 13:35:22
【问题描述】:

我正在开发一些使用 JQUERY 小部件的应用程序。在那个小部件中,有一些输入字段,如文本、文本区域和按钮。我只能通过 TAB 访问这些字段,但是直接单击鼠标无法完成。这个应用程序在 Chrome 上运行良好。 带有这些字段的简单 html 可以工作,但是当我在 js 文件中添加这些字段,然后在其他 js 文件中调用这些文件时,这些字段在 Firefox 中不起作用。

这是js文件:

var AddNewDepartment = "<br />\
<form>\
<table class='AddNewDepartment-table'>\
<tr>\
<td>\
Department Name:<span style='color: red'>*</span>&nbsp;\
<input type='text' name='departmentName' id='departmentName' class='expanded-input-text' />\
<input type='button' name='save' id='save' onclick='createDepartment()' Value='Save' class='newDepartment-submit' />\
<input type='button' name='cancel' Value='Cancel' class='newDepartment-submit'  />\
</td>\
</tr>\
</table>\
</form>\
";

拜托,我需要帮助来解决这个问题。

【问题讨论】:

    标签: javascript jquery jquery-ui firefox widget


    【解决方案1】:

    从您的帖子看来,您正在动态地将表单附加到 DOM,即在页面加载之后。因为你需要为他们处理委托事件。

    您可以尝试使用.on(),如下所示:

    $(document).on('click', 'form AddNewDepartment-table input,form AddNewDepartment-table textarea', function() {
    
     // your code
    
    });
    

    对于委托事件处理,.on() 的语法是:

    $(StaticParent).on( eventName, targets, handlerFunction );
    

    这里的StaticParent 是指非动态的DOM 元素,在页面加载时属于DOM。 eventName 可以为多个事件绑定使用空格分隔。

    【讨论】:

    • 我正在使用 JQUERY 小部件,所有页面都在 javascript 中定义。他们被邀请到另一个 js 页面中。在主 index.html 文件中包含所有 js 文件。我正在使用 jquery 可拖放、可排序和可拖动。当小部件需要覆盖在仪表板上并在其输入字段中插入文本时,就会出现问题。我需要鼠标功能。
    • 我找到了解决方案!问题在于 jquery 可排序函数stackoverflow.com/questions/6083009/i-cant-type-to-inputs
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    • 2017-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-07-08
    • 2020-04-27
    相关资源
    最近更新 更多