2011-10-20 5 views
0

私はhtmlコードでこれを持っている:jQuery - Selectを変更するとコードが部分的に動作する、なぜですか?

<select name="t" id="t"> 
<option value="6">test2</option> 
<option value="0">Overall</option></select> 

<select name="m" id="m"> 
<option value="9">something to change</option> 
<option value="0">back to Overall</option></select> 

<div id="main"></div> 

私は自動的に値「0」に「t」を選択して変更をご希望の際に「0」を選択し、「M」のユーザ変更値。だから私はjQueryのスクリプトを持っています:

$(function(){ 
    $('#m, #t').change(function(){ 
     if($('#m').val() == '0') { 
     $('#t').val('0').change(); 
     $("<div>succes!</div>").appendTo("div#main"); }   
    }); 
}); 

しかし、このスクリプトは部分的に働いています。スクリプトは情報「succes!」を表示しません。選択を変更した後。どうして? http://jsfiddle.net/SQvua/

答えて

3

あなたがこのことから.change()部分を削除する必要があります:あなたはここで、この見ることができます

はまた

$('#t').val('0').change(); 

を、それが実行時エラーになり立っているように、何の「変更」プラグインがありませんし、残りのコードは実行されません。

Updated fiddle

+0

おかげで、完璧な作業! – Lucas

1
$(function(){ 
    $('#m, #t').change(function(){ 
     if($('#m').val() == '0') { 
     $('#t').val('0'); 
     $("<div>succes!</div>").appendTo("div#main"); }   
    }); 
}); 
0

これは、再帰を行ったためです。

チェック第二選択ボックスを変更し、コンソール:

http://jsfiddle.net/SQvua/2/

関連する問題