入力値が空であるかどうかを確認するために、キーを押した後にチェックを実行すると、別のアクションを実行できます。空の入力タイプのテキストチェックを実行中
たとえば、
$("input[name=amount]").keypress(function() {
$("table[name=apply]").show();
});
ユーザーがすべてのキーストロークを削除した場合は、テーブルを非表示にします。
入力値が空であるかどうかを確認するために、キーを押した後にチェックを実行すると、別のアクションを実行できます。空の入力タイプのテキストチェックを実行中
たとえば、
$("input[name=amount]").keypress(function() {
$("table[name=apply]").show();
});
ユーザーがすべてのキーストロークを削除した場合は、テーブルを非表示にします。
$("input[name=amount]").keyup(function() {
if (this.value == '') {
$("table[name=apply]").hide();
} else {
$("table[name=apply]").show();
}
});
おそらく、イベントハンドラが実行される前に、テキストボックスの値が変更されているので、keyup
またはchange
イベントのいずれかを使用したいと思うでしょう。 keypress
イベントは入力値が変更される前に発生します。たとえば、入力が空白でキーが入力された場合、イベントハンドラの値は空白として読み取られます。
ここにデモがあります:http://jsfiddle.net/jasper/C5KPq/
keypress
は最新の値を提供しないため、keypress
の代わりにkeyup
イベントを使用して試すことができます。
$("input[name=amount]").keyup(function() {
//Here this points to the textbox element and value gives its content
if(this.value == ''){
$("table[name=apply]").show();
}
});
テーブルを切り替える場合は、これを使用できます。
$("input[name=amount]").keyup(function() {
$("table[name=apply]").toggle(this.value != '');
});
toggle(showOrHide) - 一致する要素を表示または非表示にします。
キーストロークが終了した後、あなたがチェックを実行するには、次の
if($(this).val() == "")
使用して、keyup()
メソッドを使用することができます:あなたはkeypress
にバインドする場合
$("input[name=amount]").keyup(function() {
if(this.value === ''){....}
});
またはイベントの場合、iの値あなたのイベントハンドラ内のnputはまだキーストロークの影響を受けていません。このため、代わりにkeyup
にバインドする必要があります。
試してみてください。
if ($("input[name=amount]").val() == '') // input is empty