如何使用.val()将var设置为true或false

时间:2013-02-06 10:08:20

标签: javascript jquery

我有一个文本框,我需要检查文本框是否为空,并将变量设置为true或false。

我的代码目前打印文本框的值。

var isDateTimEndEmpty = dateTimeEnd.val() == null ? true : false;

我在这里做错了什么?

3 个答案:

答案 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