2012-04-28 8 views
3

私はこのスレッドを発掘:JQuery live or something similar with .change()?.liveで「変更」()

私は、そのスレッド内の人とまったく同じ問題を抱えています。私は、DOM内でappended()の要素に対してchange()を呼び出す必要があります。

私は、.live()を使用して成功しましたが、クリックしました。今度は、ドロップダウンリストの選択を変更するために同じことを行う必要があります。

理想的には、トピックで示唆しているように、私はプラグインを使用したくありません。

問題を解決する方法はありますか?

答えて

3

jQuery 1.7以降、$.live()は推奨されていません。

$("form").on("change", "select", function(){ 
    alert (this.value); 
}); 

デモ:あなたはjQueryの最新バージョンをお持ちの場合はhttp://jsbin.com/ahikov/edit#javascript,html

+0

ありがとう、それはうまく動作します。しかし、どのようにして私は今、選択されたオプションの価値を得ることができますか? – Eleeist

+0

@Eleeistハンドラー内から 'this.value'を使うことができます。 – Sampson

+0

パーフェクト。どうもありがとうございます。 – Eleeist

1

.on()を「委任」構文で使用してください。

$(function() 
{ 
    $(document).on('change', 'select', function() 
    { 
     // your event handling code here 
    }); 
}); 
0

が、私は「法の代わりに、「クリック」「変更」「上」を使用することをお勧めいたしますあなたは新しい$.on()メソッドを使用する必要がありますライブ "など。あなたのイベントをドキュメントから添付してください:

$(document).on('change', '.yourItem', function (e) { 
     //Your code 
    });