2012-07-30 141 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

相關問題