Jquery:与表单属性相关的“NaN”错误

时间:2014-01-13 03:58:50

标签: javascript jquery selector

我正在尝试使用JQuery Selector Function和我的代码:

<body>
<input type="hidden" name="RECNUM" value="0">
<input type="hidden" name="LOCAL" value="ALE">
<script>
var hiddenvalue = new Array();
var hiddenname = new Array();
$.each($("input:hidden"), function() {
    hiddenname.push($(this).attr("name"));
    hiddenvalue.push($(this).val());
});

for(var hi=0; hi<hiddenname.length; hi++){  
    document.write("<p>hidden:" + +hiddenname[hi]+ "   "+ hiddenvalue[hi] + "</p>");
}
</script>
</body>

结果是:

hidden:NaN 0

hidden:NaN ALE

我的“名字”属性在哪里?

2 个答案:

答案 0 :(得分:3)

删除不必要的plus,实际上会尝试将string转换为number,在这种情况下string无法转换为number这样它就会返回NAN

尝试,

for(var hi=0; hi<hiddenname.length; hi++){  
    document.write("<p>hidden:" + hiddenname[hi] + "   " + hiddenvalue[hi] + "</p>");
}

答案 1 :(得分:2)

请尝试以下代码....

<body>
<input type="hidden" name="RECNUM" value="0">
<input type="hidden" name="LOCAL" value="ALE">
<script>
var hiddenvalue = new Array();
var hiddenname = new Array();
$.each($("input:hidden"), function() {
    hiddenname.push($(this).attr("name"));
    hiddenvalue.push($(this).val());
});

for(var hi=0; hi<hiddenname.length; hi++){  
    document.write("<p>hidden: "+hiddenname[hi]+"   "+hiddenvalue[hi]+"</p>");
}
</script>
</body>