Đây có phải là cách hay để kiểm tra xem giá trị của trường là null không?jQuery: kiểm tra xem giá trị của một trường là null (trống)
if($('#person_data[document_type]').value() != 'NULL'){}
Hoặc có cách nào tốt hơn không?
Đây có phải là cách hay để kiểm tra xem giá trị của trường là null không?jQuery: kiểm tra xem giá trị của một trường là null (trống)
if($('#person_data[document_type]').value() != 'NULL'){}
Hoặc có cách nào tốt hơn không?
Giá trị của trường không được rỗng, giá trị chuỗi luôn luôn là giá trị chuỗi.
Mã sẽ kiểm tra xem giá trị chuỗi có phải là chuỗi "NULL" hay không. Bạn muốn kiểm tra xem nó là một chuỗi rỗng thay vì:
if ($('#person_data[document_type]').val() != ''){}
hay:
if ($('#person_data[document_type]').val().length != 0){}
Nếu bạn muốn kiểm tra xem phần tử tồn tại ở tất cả, 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) {...}
}
'Giá trị của một trường không thể là null, nó luôn luôn là một giá trị chuỗi.' điều này không hoàn toàn đúng. Tôi có một 'lựa chọn' không chứa' tùy chọn'. Khi tôi thực hiện '.val()', nó trả về 'null'. Jquery 1.7.2 – Liam
@Liam: Vâng, bạn nói đúng, đó dường như là ngoại lệ. – Guffa
Ngoại lệ này có được giải quyết trong các phiên bản mới nhất không? –
jquery cung cấp chức năng val()
và not value()
. Bạn có thể kiểm tra chuỗi rỗng sử dụng jquery
if($('#person_data[document_type]').val() != ''){}
tôi cũng sẽ cắt lĩnh vực đầu vào, gây ra một không gian có thể làm cho nó trông giống như điền
if ($.trim($('#person_data[document_type]').val()) != '')
{
}
hoàn hảo nó làm việc cho tôi :) –
Giả sử
var val = $('#person_data[document_type]').value();
bạn có những trường hợp :
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 đi qua với điều kiện ..
đôi khi kết quả của bạn sẽ được null
hoặc undefined
hoặc ''
hoặc 0
, để xác nhận đơn giản của tôi tôi sử dụng 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 người giúp đỡ này để đạt được điều đó.
loại phần tử nào là #person_data? và những gì bạn xem xét như là một giá trị NULL? –