Bu, bir alanın değerinin olup olmadığını kontrol etmenin iyi bir yolu null
mu?
if($('#person_data[document_type]').value() != 'NULL'){}
Yoksa daha iyi bir yol var mı?
Bu, bir alanın değerinin olup olmadığını kontrol etmenin iyi bir yolu null
mu?
if($('#person_data[document_type]').value() != 'NULL'){}
Yoksa daha iyi bir yol var mı?
Yanıtlar:
Bir alanın değeri boş olamaz, her zaman bir dize değeridir.
Kod, dize değerinin "NULL" dizesi olup olmadığını kontrol edecektir. Bunun yerine boş bir dize olup olmadığını kontrol etmek istersiniz:
if ($('#person_data[document_type]').val() != ''){}
veya:
if ($('#person_data[document_type]').val().length != 0){}
Öğenin var olup olmadığını kontrol etmek istiyorsanız, bunu aramadan önce yapmanız gerekir 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.
bu tamamen doğru değil. Bir var select
hayır içeren options
. Bunu gerçekleştirdiğimde .val()
geri dönüyor null
. Jquery 1.7.2
select
herhangi olmadan option
elemanları normalde olması bir şey değildir. Oldukça yararsız.
<select>
olan kullanıcınız için olası seçenekler içerebilir <option>
.
select
, null
bir 'devre dışı' seçeneği seçildiğinden , bir değerle başlayacaktır . stackoverflow.com/questions/5805059/…
Varsayım
var val = $('#person_data[document_type]').value();
bu davalara sahipsin:
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)
Öyleyse ihtiyacınız olanı kullanın.
bu, koşulluya ne tür bilgiler aktardığınıza bağlıdır ..
bazen sonucunuz null
veya undefined
veya ''
veya 0
, benim basit doğrulamam için bunu kullanıyorum eğer.
( $('#id').val() == '0' || $('#id').val() == '' || $('#id').val() == 'undefined' || $('#id').val() == null )
NOT : 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;
}
},
Bunu başarmak için bu yardımcıları kullanın.
isStringNullOrEmpty
IS isStringFalsey
ve böylece return !val;
çalışacak
jquery val()
işlevi sağlar ve not value()
. Jquery kullanarak boş dizeyi kontrol edebilirsiniz
if($('#person_data[document_type]').val() != ''){}
Deneyin
if( this["person_data[document_type]"].value != '') {
console.log('not empty');
}
<input id="person_data[document_type]" value="test" />