Javascript/JQuery - val().length'是null或不是对象

use*_*104 7 jquery

我有错误val().length是null或不是对象"来自代码:

function size(sender, args) {

    var sizeVariable = $("input[id$='txtHello']");
    if (sizeVariable.val().length == 0)
    {
          args.IsValid = false;
     }
}
Run Code Online (Sandbox Code Playgroud)

错误发生在"If"语句中.我试图检查是否:

  1. 变量存在
  2. 如果变量中有什么东西

我认为问题在于第(1)点.如何检查文本字段是否存在(希望能解决问题)?

Dav*_*und 20

您可以测试输入字段是否存在:

if($("input[id$='txtHello']").length > 0) { ... }
Run Code Online (Sandbox Code Playgroud)

如果没有,val()将返回undefined.

您可以立即跳到以下内容:

if(!!$("input[id$='txtHello']").val())
Run Code Online (Sandbox Code Playgroud)

......因为这两个undefined""将解析false


Ste*_*lim 5

试试吧if (sizeVariable.val() == undefined || sizeVariable.val().length == 0).这样,它会先检查是否有值,然后再尝试查看它有多长,如果存在的话