首页 新闻 会员 周边 捐助

关于JQ的 .val()方法错误

0
悬赏园豆:20 [已解决问题] 解决于 2013-06-26 11:26

直接上代码图片:
一个each循环   是对表单内的所有input循环 判断是否有值 
很自然的就用了 val()方法
这时候神了  val()方法报错;但是我把this输出又确实存在 
而且换一个方法 .attr('value')  来输出
说明 value值是存在的。。。。。
搞不懂了   求解答
 
艾尼路的主页 艾尼路 | 初学一级 | 园豆:116
提问于:2013-06-25 16:41
< >
分享
最佳答案
1

我觉得,是包含了非form元素,所有用val()取不到值。用attr("value")能获取值,有可能是由于被认为是自定义属性。

收获园豆:11
幻天芒 | 高人七级 |园豆:37207 | 2013-06-25 17:08

恭喜你猜对了,确实是我的疏忽

我是用jq.form.js 里的ajaxform方法,他确实没有返回给我一个完整的domcumet对象

艾尼路 | 园豆:116 (初学一级) | 2013-06-26 11:27

@艾尼路: 呵呵...

幻天芒 | 园豆:37207 (高人七级) | 2013-06-26 12:49
其他回答(3)
0

js代码贴全一点 特别是formData的取值,很有可能$(formData)有问题,包含了错误的DOM元素

收获园豆:7
木头小木头 | 园豆:284 (菜鸟二级) | 2013-06-25 16:58

嗯 感谢  测试过后确实是这样  返回的不是一个合法的dom元素

支持(0) 反对(0) 艾尼路 | 园豆:116 (初学一级) | 2013-06-26 11:28
0

错误提示已经很明显了 o.nodeNme没有定义 o是个null 

收获园豆:1
s_p | 园豆:140 (初学一级) | 2013-06-25 17:21
0

formData 如果是ID的话,可以先把 所有 input 筛选出来

$(formData+' input').each()

试试用这个,看看会不会报错。

收获园豆:1
Yu | 园豆:12990 (专家六级) | 2013-06-25 17:26
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册