2012-02-25 11 views
1

jQueryを使用して選択ドロップダウンのonChangeイベントをトリガーしたいとします。 $(element2).change(populateRelatedDropdowns);私はselectコントロールの値を手動で変更しているときにうまくいきます。しかし、私がonChangeをトリガしたいときは、$(entydd).trigger('change');を使うだけで動作しません。jQuery for force triggering on selectドロップダウンの変更

私を助けてください。ありがとう。選択ドロップダウンでイベントを配線するための

コード:この件まで

var element2 = document.createElement("select"); 
$(element2).change(populateAttrsDropdowns); 


function populateAttrsDropdowns() 
{ 
//does something 
} 

がスムーズです。ドロップダウン値を手動で変更したときに機能します。

ここでは、ドロップダウンリストのオプション値を手動で設定し、onChangeをトリガーする必要がある場合の要件があります。 (別の関数で)以下のコード:

for (i = 0; i < customArray.length; i++) 
{ 
    $('#btnAdd').trigger('click'); 
    var entydd = (i+1) + ".enty"; //this is the name of my dropdowns..there are a couple 
    document.getElementById(entydd).value = customArray[i].custom_value; 
    $(entydd).trigger('change'); 
} 

・ホープ、この余分なコード部分が役立ちます。私はそれをテストしていませんが、それは(選択の値を設定)

for (i = 0; i < customArray.length; i++) 
{ 
    var mySelect = $((i+1) + ".enty"); 
    var myVal = customArray[i].custom_value; 
    mySelect.val(myVal); 
} 

あなたはjqueryの経由でそれを行う場合とは対照的に、ちょうど、変更イベントをトリガすることがあります

+1

されるべきだと思うあなたを与えているコードを表示してくださいその文脈での問題。 – mindandmedia

+1

'$(element2).trigger( 'change');' $(entydd).trigger( 'change'); ' – mgraph

+0

コードが大きすぎてここに貼り付けることができません。私はできるだけ多くの関連コードを含めるために私の最初の投稿を編集しています。 – Anupam

答えて

0

はこれを書き換えるしよう純粋なjsに。

と、それは変更をトリガしていない場合、あなたは2回目の呼び出しを追加することができますmyChanged(MySelectと、myVal)

+1

私が知る限り、 '.val()'は変更をトリガーしません。また、 '.val()'は私のコードではうまくいかないようです。私のコードに書かれているように、 'document.getElementById()。value = myvalue'を使ったのです。 – Anupam

+0

多分私たちのためにフィドルを作成する必要があります... - > http://jsfiddle.net/ – mindandmedia

+0

どうすればいいですか?申し訳ありませんが、私はこれに新しいです。 – Anupam

2

を、私はそれが

$('#'+entydd).trigger('change'); 
+0

これも同様に試してみます。 – Anupam

+0

あなたのエラーは何でも、$( '#' + entydd)を使用する必要があります。 jqueryを使用してidで要素を選択するには、#を使用する必要があります。あなたのコードでは、var entydd =(i + 1)+ ".00"というIDを持つハッシュはありません。 –

+0

私も#で試してみましたが、うまくいきません。 – Anupam

関連する問題