jQuery:检查一个字段的值是否为空(空)

这是一个很好的方法来检查一个字段的值是否为空?

if($('#person_data[document_type]').value() != 'NULL'){} 

或者,还有更好的方法?

一个字段的值不能为空,它总是一个string值。

代码将检查string值是否为string“NULL”。 你想检查它是否是一个空string:

 if ($('#person_data[document_type]').val() != ''){} 

要么:

 if ($('#person_data[document_type]').val().length != 0){} 

如果你想检查元素是否存在,你应该这样做,然后调用val

 var $d = $('#person_data[document_type]'); if ($d.length != 0) { if ($d.val().length != 0 ) {...} } 

我也会修剪input字段,造成空间可能使它看起来像填充

 if ($.trim($('#person_data[document_type]').val()) != '') { } 

假设

 var val = $('#person_data[document_type]').value(); 

你有这些情况:

 val === 'NULL'; // actual value is a string with content "NULL" val === ''; // actual value is an empty string val === null; // actual value is null (absence of any value) 

所以,使用你所需要的。

这取决于你传递给条件的是什么样的信息。

有时你的结果将为nullundefined'''' ,为我的简单validation我使用这个如果。

 ( $('#id').val() == '0' || $('#id').val() == '' || $('#id').val() == 'undefined' || $('#id').val() == null ) 

注意null != 'null'

 _helpers: { //Check is string null or empty isStringNullOrEmpty: function (val) { switch (val) { case "": case 0: case "0": case null: case false: case undefined: case typeof this === 'undefined': return true; default: return false; } }, //Check is string null or whitespace isStringNullOrWhiteSpace: function (val) { return this.isStringNullOrEmpty(val) || val.replace(/\s/g, "") === ''; }, //If string is null or empty then return Null or else original value nullIfStringNullOrEmpty: function (val) { if (this.isStringNullOrEmpty(val)) { return null; } return val; } }, 

利用这个帮手来实现这一点。

jquery提供了val()函数,而not value() 。 你可以使用jquery检查空string

 if($('#person_data[document_type]').val() != ''){}