You could do something like this:
HTML:
<label for="txt1">Field 1</label>
<input type="text" id="txt1" />
<label class="secondary hidden" for="txt2">Field 2</label>
<input class="secondary hidden" type="text" id="txt2" />
<label for="txt3">Field 3</label>
<input type="text" id="txt3" />
<label class="secondary hidden" for="txt4">Field 4</label>
<input class="secondary hidden" type="text" id="txt4" />
CSS:
input { display: block; margin-bottom: 10px; }
.hidden { display: none; visibility: hidden; }
のjQuery:
var $txt1 = $("#txt1"),
$secondary = $(".secondary");
$txt1.keyup(function() {
$secondary.toggleClass("hidden", $(this).val() == "");
});
toggleClassを使用するには、あなたのトンができますoクラスを追加または削除するためのブール値を渡します。そしてkeyupに結合すると、すぐにあなたがchangeと同じようにonBlurイベントを待っている対フィールドの値に応じて表示または非表示することができます。
ああそうです。値が空であるかどうかを確認するためにkeyupとval関数を使用して、私はいくつかのトリガーが必要だと思ったが、それを行う正しい方法を見つける。私はこれを試して、これは正確にうまく動作すると思う! – Rubytastic
私が非表示にしている要素の下にある送信ボタンのみが正しく配置されていない場合、正しく機能していますか?どうも! – Rubytastic
@Rubytastic、多分このようなものが欲しいです:http://jsfiddle.net/g6JKy/1/?正しく配置されないとどういう意味ですか? –