2012-02-07 17 views
3

入力フィールドの値が'',nullまたはundefinedの場合は、次のようになります。入力フィールドの値が ''、nullまたはundefinedのとき

私は常に文字列となります空のフィールド

if($('#cur').val() == 'undefined' || $('#cur').val() == '' || $('#cur').val() == 'null'){ 
    alert('Blank'); 
} 
+3

未定義またはnullをチェックするには、引用符を使用しないでください。 –

+2

'$( '#cur').val()== 'undefined''は、ユーザが' undefined'という単語を入力した場合にtrueを返します。同じことが 'null'にも当てはまります。 'null'か' undefined'をチェックするには、 'a === null'、' b === undefined'を実行します。 – Oybek

答えて

9

input要素の値をチェックしようとしています。

if($("#cur").val() === "") { 
    alert("Blank"); 
} 

現在、文字列リテラル "未定義"と "null"をチェックしています。 inputの値が実際には文字列 "undefined"または "null"だった場合にのみ該当します。例えば:それはinputが空白スペースが、他には何が含まれている、とあなたは空のように、その数をカウントしたい場合はことは注目に値するかもしれ

<!--This would be blank according to your original test--> 
<input type="text" value="undefined"> 

、上記十分ではありません。あなたは、文字列から末尾の空白/リードを削除するにはjQueryのtrim機能を使用することができます。

if($.trim($("#cur").val()) === "") { 
    alert("Blank"); 
} 
0

あなたが本当にnullを取得したい場合は、disabledに入力プロパティを設定することができます。

<input id="name" name="name" type="text" value="value" disabled /> 

これだけであなたはnullを得ることができます。

関連する問題