นี่เป็นวิธีที่ดีในการตรวจสอบว่าค่าของฟิลด์คือ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/…
ฉันจะตัดช่องป้อนข้อมูลด้วยเพราะช่องว่างอาจทำให้ดูเหมือนเต็มไปหมด
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)
ดังนั้นใช้สิ่งที่คุณต้องการ
ขึ้นอยู่กับชนิดของข้อมูลที่คุณส่งผ่านไปยังเงื่อนไข ..
บางครั้งผลลัพธ์ของคุณจะเป็น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" />