2016-03-21 3 views
0

内のクラス名でタグ:他の場所でアクセス私はjQueryのことで、いくつかのタグを作成し、怒鳴るようにそのためのクラス名を定義するjQueryの

$('#tr').html('<select class="optcode"> 
       <option>select code</option> 
       <option>select code</option>' 
       </select>); 

を私はコード怒鳴ることにより、クラス名によってあまりにもアクセス<select>をしたいが、

$('.optcode').change(function(){ 
    alert('something'); 
}) 

答えて

0

試み: -

$('#tr').on('change', '.optcode', function(){ 
    alert('something'); 
}); 
+0

ありがとうございました –

0

変更機能は、要素に結合されていない彼らは、コードが実行される時点でDOMに存在しないため:それは私はそれを解決することができますどのように機能does't。関数を使用して、要素をDOMとバインディングに同時に追加することができます。

このような何かが動作します:あなたはそれが、この中で作業を見ることができます

function doStuff() { 

    $('#tr').html('<select class="optcode"><option>select code</option><option>select code</option></select>'); 

    $('.optcode').change(function(){ 
     alert('something'); 
    }) 

} 

$(document).ready(function() { 
    doStuff(); 

}) 

はフィドルをJS:助けhttps://jsfiddle.net/hsvnhhn7/

希望を。 delegate使用

0

はちょうど

$('#tr').html('<select class="optcode"> 
       <option>select code</option> 
       <option>select code</option>' 
       </select>); 

$('#tr').html('<select class="optcode"><option>select code</option><option>select code</option></select>'); 

するにはを参照してくださいデモ

$('#tr').html('<select class="optcode"><option>select code</option><option>select code</option></select>'); 
 

 
$('.optcode').change(function(){ 
 
    alert('something'); 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="tr"></div>
を変更します

関連する問題