0

ユーザーが州のドロップダウンから州を選択すると、ドロップダウンフィールドに高校のリストが表示されます。

ユーザーが州を選択すると高校を表示できますが、ユーザーが高校を選択せず​​にフォームを送信すると問題が発生します。高校を選択しないと、フォームは表示されません。

これは実際には問題ではありません。これは、フォームが検証に失敗する可能性がある方法の1つであり、私の質問につながります。

ユーザーが検証に失敗すると、フォームを送信する前に入力した情報にフィールドが入力された同じフォームが表示されます。

州のドロップダウンは、選択した州で事前に選択されていますが、高校のドロップダウンはどこにも表示されません。州のドロップダウンの選択を解除してから州を再度選択すると、高校のリストが表示されます。

#stateフィールドでバインド変更を使用しています。

クリックや状態フィールドの変更を待たずに高校のフィールドを表示するにはどうすればよいですか?

<select name="state" id="state">
 <option></option>
 <option value="NY">NY</option>
 <option value="TX">TX</option>
</select>

<select name="high_school" id="high_school">
 <option></option>
 <option value="Bayside High">Bayside High</option>
 <option value="Ridgemont High">Ridgement High</option>
</select>

$("#high_school").hide();

$('#state').bind('change', function() {
  $("#high_school").show();
});

ロード時に#stateを監視する必要があると思います

4

1 に答える 1

1

負荷時に#stateを監視することについては正しいです。

//check to see if something in #state is selected, if not hide #high_school
if($("#state").val() == '') {
    $("#high_school").hide();
}

$('#state').bind('change', function() {
  $("#high_school").show();
});

参照: http: //jsfiddle.net/89K5G/

#stateを選択して、フレームを更新してみてください:)

于 2012-04-12T19:05:00.773 に答える