jquery:无法读取undefined的属性

时间:2016-09-15 11:25:15

标签: jquery

我想读取表单中输入的值。

有时表单包含输入

<form id="myform">
  <input type="text" name="username">
  <input type="hidden" name="userid" value="123">
</form>

有时上述输入不会采用

形式
<form id="myform">
  <input type="text" name="username">
</form>

我的问题是

我正在读取如果输入不存在则抛出错误的userid值。

var form = document.getElementById("myform");
userid = form.userid.value;

由于此错误,大多数脚本功能都无法正常工作。

if(pack_id !=undefined && pack_id ==''){
  pack_id=0;    
}

请帮我纠正错误

4 个答案:

答案 0 :(得分:1)

&#13;
&#13;
var ext = $('input[name=userid]').length;


if (ext) {
  alert('input is here')

} else {

  alert('not input is here')
}
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form id="myform">
  <input type="text" name="username">
</form>
&#13;
&#13;
&#13;

检查其输入的$('input[name=userid]').length长度是否

答案 1 :(得分:1)

您可以在获取值之前应用未定义的检查

if(form.userid!=undefined){
userid = form.userid.value;
}

答案 2 :(得分:1)

您可以通过typeof方法检查userid属性是否存在于JavaScript dom元素对象中。

2000

答案 3 :(得分:1)

var userIdCheck=$('#userId').val();
if(userIdCheck!=='undefined'){
alert("Ther is a input"+userIdCheck);
}
else{
alert("User Id does not contain the value");
}

试试这可能有助于你