私はこのコードを使用しています: http://jsfiddle.net/q3nUS/
$('#cf11_field_20').change(function() {
$("#li-11-22")[$(this).val() == "full03_accommodation_hotel" ? 'show' : 'hide']("fast");
}).change();
$('#cf11_field_22').change(function() {
$("#li-11-23")[$(this).val() == "full03_hotel_other" ? 'show' : 'hide']("fast");
}).change();
最初のドロップダウンで「ホテル」が選択され、2番目のドロップダウンで「その他」が選択されている場合にのみテキストフィールドが表示されるように、正常に機能します。
しかし、最初のドロップダウンを「ホテル」以外に変更すると、明らかに、他の両方のフィールドを非表示にする必要があります。現在、テキスト フィールドはそのままです。
テキスト フィールドも非表示になるコードを変更するにはどうすればよいですか? 論理的に行う方法は知っていますが、構文に問題があります。
私はこのようなことを試しました:
$('#cf11_field_20').change(function() {
$("#li-11-22")[$(this).val() == "full03_accommodation_hotel" ? 'show' : 'hide']("fast");
$("#li-11-23")[$(this).val() != "full03_accommodation_hotel" ? 'hide']("fast");
}).change();
$('#cf11_field_22').change(function() {
$("#li-11-23")[$(this).val() == "full03_hotel_other" ? 'show' : 'hide']("fast");
}).change();
ここで適切な構文に本当に問題があります。ありがとう!