Це хороший спосіб перевірити, чи є значення поля null
?
if($('#person_data[document_type]').value() != 'NULL'){}
Або є кращий спосіб?
Це хороший спосіб перевірити, чи є значення поля null
?
if($('#person_data[document_type]').value() != 'NULL'){}
Або є кращий спосіб?
Відповіді:
Значення поля не може бути нульовим, це завжди рядкове значення.
Код перевірить, чи є значенням рядка рядок "NULL". Ви хочете перевірити, чи це порожній рядок:
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 ) {...}
}
The value of a field can not be null, it's always a string value.
це не зовсім вірно. У мене є select
вміст, що не містить options
. Коли я виконую .val()
на цьому, вона повертається null
. Jquery 1.7.2
select
без будь-яких option
елементів - це не те, що у вас зазвичай. Це досить марно.
<select>
може містити можливі параметри для вашого користувача, чий результат <option>
буде отриманий з певної перевірки.
select
, воно почне починатися зі null
значення, оскільки вибрано параметр "вимкнено". stackoverflow.com/questions/5805059 / ...
Припускаючи
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)
Отже, використовуйте те, що вам потрібно.
це залежить від того, яку інформацію ви передаєте до умовної.
Іноді ваш результат буде null
або undefined
або ''
або 0
, для моєї простої перевірки я використовую це , якщо.
( $('#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;
}
},
Використовуйте цих помічників для досягнення цього.
isStringNullOrEmpty
є, isStringFalsey
і таким чином return !val;
спрацювало б
jquery забезпечує val()
функцію та not value()
. Ви можете перевірити порожній рядок за допомогою jquery
if($('#person_data[document_type]').val() != ''){}
Спробуйте
if( this["person_data[document_type]"].value != '') {
console.log('not empty');
}
<input id="person_data[document_type]" value="test" />