簡體   English   中英

jQuery click事件不適用於動態創建的表單字段

[英]jQuery click event doesn't work for dynamically created form field

我正在使用表格行創建動態輸入字段

 var i = 1; $('#add').click(function(){ i++; $('#dynamic_field').append('<tr id="row'+i+'" class="dynamic-added"><td><input type="text" id ="lable" name="lable" ></tr>'); }); $('#lable').click(function(){ alert('called'); }); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <table class="table table-bordered" id="dynamic_field"> <td colspan="2"> <button type="button" name="add" id="add" class="btn btn-success">Add Lable</button> </td> </table> 

但它不叫警報

因為您創建了動態輸入,所以您應該使用事件委派 這意味着使用

$(document).on("click", '#lable', function(){

代替

$('#lable').click(function(){

請注意,html中不能包含重復的id屬性。 所以請改用class( .lable )。

 var i = 1 $('#add').click(function(){ i++; $('#dynamic_field').append('<tr id="row'+i+'" class="dynamic-added"><td><input type="text" class="lable" name="lable"></tr>'); }); $(document).on("click", '.lable', function(){ alert('called'); }); 
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <table class="table table-bordered" id="dynamic_field"> <tr> <td colspan="2"> <button type="button" name="add" id="add" class="btn btn-success">Add Lable</button> </td> </tr> </table> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM