2012-07-30 62 views
0

我正在使用某些使用JQUERY小部件的应用程序。在那个小部件中有一些输入字段,如文本,textarea和按钮。我只能通过TAB访问这些字段,但用鼠标直接点击就无法完成。这款应用在Chrome上运行良好。 简单的html与这些领域的作品,但是当我在js文件中添加这些领域,然后调用其他js文件中的这些文件,这些领域不适用于Firefox。输入文本和按钮字段在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>\ 
"; 

请,我需要帮助解决这个问题。

回答

0

从您的文章,似乎你的页面加载后动态即追加的形式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可能被空间分隔以进行多个事件绑定。

+0

我正在使用JQUERY小部件,并且所有页面都是在javascript中定义的。他们被邀请进另一个js页面。在主index.html文件中包含所有js文件。我正在使用jquery dropable,可排序和可拖动。小部件需要在仪表板上叠加并在其输入字段中插入文本时发生问题。我需要鼠标功能。 – 2012-07-30 14:14:59

+0

我找到了解决方案! 问题是与jQuery的排序功能 http://stackoverflow.com/questions/6083009/i-cant-type-to-inputs – 2012-08-08 19:42:35

相关问题