2017-10-13 114 views
2

基本上我有兩個div,jQuery的輸入事件觸發僅

<div id="firstPage"></div>

<div id="details"> 
    <div id='searchBox' class='detail--searchBox'> 
     <input id='txtSearchTerm' name='txtSearchTerm' type='text'> 
    </div> 
</div> 

在頁面加載與ID搜索框的文本框是隱藏的,它顯示在點擊與ID firstPage的div事件。我有以下功能,必須在文本框更改時觸發。但是一旦頁面被重新加載,這個輸入事件就會被觸發。

onSearchBoxOnDetailsChange: function() { 
    $("#searchBox").on("input", "#txtSearchTerm", function() { 
     var val = $(this).val().trim(); 
     val = val.replace(/\s+/g, ''); 
     if (val.length > 1) { 
      console.log(val); 
     } else { 

     } 
    }); 
}, 
+0

似乎爲我工作的罰款。請編輯你的問題並提供[mcve]。 – Xufox

回答

2

編寫代碼象下面這樣:

onSearchBoxOnDetailsChange: function() { 
    $(document).on("input", "#searchBox #txtSearchTerm", function() { 
    var val = $(this).val().trim(); 
    val = val.replace(/\s+/g, ''); 
    if (val.length > 1) { 
     console.log(val); 
    } else { 

    } 
    }); 
}, 
+0

謝謝,問題解決了我需要從'document'中搜索'#searchBox#txtSearchTerm'。 –

+0

如果這個答案有幫助,然後接受答案。 –