2017-04-19 46 views
0

捕獲動態生成的輸入標籤我有一個應用程序,我有一個添加更多的按鈕,我需要在動態生成的輸入使用jquery自動完成,我試圖用KEYUP作爲事件來啓動自動完成通過JavaScript

我的HTML代碼

<div class="form-group" id="medicineTable"> 
          <div class="col-sm-8 selectContainer"> 
           <input name="OTCtext[]" id="OTCtext" class="form-control medicinefind"/> 
          </div> 
          <div class="col-sm-4 selectContainer"> 
           <input type="text" class="form-control" placeholder="Qts" value="1"/> 
          </div> 
         </div> 
         <div class="form-group" id="medicineTableTemp"> 
          <div class="col-sm-8 selectContainer"> 
           <input name="OTCtext[]" id="OTCtext" class="form-control medicinefind"> 
           <input type="hidden" id="hiddenValue" value="0"> 
          </div> 
          <div class="col-sm-4 selectContainer"> 
           <input type="text" class="form-control" placeholder="Qts" value="1"/> 
          </div> 
         </div> 

我的js代碼

$('.selectContainer').on('keyup', 'input.medicinefind', function(){ 
      alert('clicked'); 
     }); 

我不能趕上動態INOUT這個領域,所以請協助

+0

我想喲選擇了錯誤的家長! ('keyup','input.medicinefind',function(){alert('clicked'); });' – Rayon

+0

哪個輸入是動態生成的?什麼是生成它?你可以在動態生成它的同時初始化它上面的自動完成嗎? – SeanOB

+0

感謝Rayon它的工作..如果你想發佈這個答案我會接受.. –

回答

1

Event delegation允許我們附加一個單一的事件偵聽器,以父元素,將火了選擇匹配的所有後代,無論是現在存在的或將來添加這些後代。

在你的例子中,你選擇了錯誤的元素作爲父!

$('#medicineTable').on('keyup', 'input.medicinefind', function(){ alert('clicked'); }); 
0

我建議你在DOM填充或元素被添加到DOM後啓動它。如果你能分享你的工作示例鏈接,這將有助於我幫助你。