TypeError:$(...)。val(...)在jquery中未定义

时间:2016-03-31 09:15:46

标签: javascript jquery twitter-bootstrap

我收到此错误 -

  

TypeError:$(...)。val(...)未定义

使用以下JavaScript代码:

$(document).ready(function () {
    $("#role").on('keyup', function(){

        var error = false;
        if ($("#role").val() == ""){  
        if($(this).attr("id") == "role"){
            $("#roleError").html("Role is required");
            $("#role").css("border","1px solid red");
        }
        error = true;
        }
    });
});

这是我的HTML代码 -

<div class="form-group">
    <label class="pull-left" for="role">ROLE</label>
    <input type="text" name="role" class="form-control grn-text-input"
           id="role" ng-model="role.name" placeholder="Manager"  required/>
    <span id="roleError" class="pull-left errormsg"></span> 
</div>

为什么我会收到这样的错误?

4 个答案:

答案 0 :(得分:3)

标识为Ro的元素不存在,因此此代码失败:

$("#ro").val()

我认为这必须是

$("#role").val()

答案 1 :(得分:1)

在这一行输入错误 -

if ($("#ro").val() == ""){  

将其更改为 -

if ($("#role").val() == ""){  

答案 2 :(得分:0)

$(document).ready(function(){ $(&#34;#role&#34;)。on(&#39; keyup&#39;,function(){

检查出来

 var error = false;
            if ($("#role").val() == ""){  
            if($(this).attr("id") == "role"){
                $("#roleError").html("Role is required");
                $("#role").css("border","1px solid red");
            }
            error = true;
        }
    });

});

答案 3 :(得分:0)

          $("#ro").val()

出现此错误是因为ID ro的元素不存在

将此更改为#role

        $("#role").val()