Đây có phải là một cách tốt để kiểm tra xem giá trị của một trường có phải null
không?
if($('#person_data[document_type]').value() != 'NULL'){}
đây có phải là cách tốt hơn không?
Đây có phải là một cách tốt để kiểm tra xem giá trị của một trường có phải null
không?
if($('#person_data[document_type]').value() != 'NULL'){}
đây có phải là cách tốt hơn không?
Câu trả lời:
Giá trị của một trường không được rỗng, nó luôn là một giá trị chuỗi.
Mã sẽ kiểm tra xem giá trị chuỗi có phải là chuỗi "NULL" hay không. Thay vào đó, bạn muốn kiểm tra xem đó có phải là một chuỗi trống không:
if ($('#person_data[document_type]').val() != ''){}
hoặc là:
if ($('#person_data[document_type]').val().length != 0){}
Nếu bạn muốn kiểm tra xem phần tử có tồn tại hay không, bạn nên làm điều đó trước khi gọi val
:
var $d = $('#person_data[document_type]');
if ($d.length != 0) {
if ($d.val().length != 0 ) {...}
}
The value of a field can not be null, it's always a string value.
điều này không hoàn toàn đúng. Tôi có một select
chứa không options
. Khi tôi thực hiện .val()
điều này, nó sẽ trở lại null
. Jquery 1.7.2
select
không có bất kỳ option
phần tử nào không phải là thứ mà bạn thường có. Nó khá vô dụng.
<select>
có thể chứa các tùy chọn khả thi cho người dùng của bạn mà họ <option>
sẽ đến từ một số loại xác thực.
select
, nó sẽ bắt đầu với một null
giá trị vì tùy chọn 'vô hiệu hóa' được chọn. stackoverflow.com/questions/5805059/…
Giả định
var val = $('#person_data[document_type]').value();
bạn có những trường hợp sau:
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)
Vì vậy, hãy sử dụng những gì bạn cần.
điều đó phụ thuộc vào loại thông tin bạn đang chuyển đến điều kiện ..
đôi khi kết quả của bạn sẽ là null
hoặc undefined
hoặc ''
hoặc 0
, đối với xác nhận đơn giản của tôi, tôi sử dụng điều này nếu.
( $('#id').val() == '0' || $('#id').val() == '' || $('#id').val() == 'undefined' || $('#id').val() == null )
LƯU Ý : 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;
}
},
Sử dụng những người trợ giúp này để đạt được điều đó.
isStringNullOrEmpty
là isStringFalsey
và do đó return !val;
sẽ làm việc
jquery cung cấp val()
chức năng và not value()
. Bạn có thể kiểm tra chuỗi trống bằng jquery
if($('#person_data[document_type]').val() != ''){}
Thử
if( this["person_data[document_type]"].value != '') {
console.log('not empty');
}
<input id="person_data[document_type]" value="test" />