2010-12-13 11 views
4
$('#id').bind('change',function() { 
     //do something 
    }).trigger('change'); 

これは問題なく動作します。 ID2は、AJAXJQuery:.live()とtrigger()が連携していません

を使用することによって生成された場合、私は

$('#id2').live('change',function() { 
    //do something 
}).trigger('change'); 

しかし、その動作していないを使用しようとしています。誰でも私を助けてくれますか?あなたは

$('#id2').live('change',function() { 
    //do something 
}); 

を書く場合#id2まだ作成されていないので、 おかげ

答えて

10

は、あなたがこれを行います。一方、trigger('change')はすぐにイベントをトリガします。しかし、要素がまだ存在しない場合、それを呼び出すことは効果がありません。

あなたは要素が作成されるとtrigger()を呼び出す必要があります:

$('#id2').trigger('change'); 

#id2がすでに存在する場合live()を使用する必要はありません。 bind()を使用することができます。

+0

#id2はまだ作成されていないため、live()を使用する必要があります。トリガする他のソリューションはありますか? – bee

+0

* "あなたは#id2がまだ作成されていないのでこれを行う" *もしあなたが要素がすでに存在していても 'live'を使うかもしれません。(定期的に新しい' id 'しかし、私は、要素が既に存在する場合には動作するので、** OPの問題であることを期待しています:http://jsbin.com/ipohe4 –

+0

@Raj:それはフェリックスの主張です。存在しない要素。 'trigger'は既存の要素に対してのみ機能します。 –

0

ajax-complete関数で変更イベントをトリガーしようとしましたか?

関連する問題