我有一个文本框,我需要检查文本框是否为空,并将变量设置为true或false。
我的代码目前打印文本框的值。
var isDateTimEndEmpty = dateTimeEnd.val() == null ? true : false;
我在这里做错了什么?
答案 0 :(得分:4)
这是正确的方法:
var isDateTimEndEmpty = !$.trim(dateTimeEnd.val()).length;
好的做法是使用$.trim
使代码忽略输入字段中的空格。因此,如果 trimmed 值的长度为0
,则该值为空。
答案 1 :(得分:1)
检查其长度
var isDateTimeEndEmpty = $.trim($('#txtboxID').val()).length > 0;
答案 2 :(得分:0)
dateTimeEnd.val()
的结果不会为空。它总是一个字符串,可能是空字符串。
实际上,你不需要得到'true'的'true',只需要一个“真正的”或“虚假的”值,比如空的或非空的字符串:
var isDateTimEndEmpty = $.trim(dateTimeEnd.val()) //remove spaces at start and end
if (isDateTimEndEmpty) {
//if dataTimeEnd is not empty, go here
} else {
//if dateTimeEnd is empty, go here
}
如果您对隐式转换感到不舒服,您也可以以明确的方式对其进行编码:
var isDateTimEndEmpty = Boolean($.trim(dateTimeEnd.val())); //explicit casting