jquery.form.js 遇到的奇怪问题

我的这个jquery.form.js不知道是哪个版本的

觉得很奇怪,以前用的好好的,js没改过

用Firefox测试正常通过,IE提示缺少对象

利用IE开发者工具测试了下发现代码行数512行报错

var v = $.browser.msie && !(op.attributes['value'].specified) ? op.text : op.value;

看来这句代码挡住了: op.attributes['value'] == undefined

初步估计是ie下select元素的option没有指定value造成的, 生产环境下这个select下只有这一个元素,我页面也有一部分是struts2的select标签,没有问题。

然后我发现我有这么几句代码:

<select name="project.isvalid"

>

</option>

<option value="0">

</option>

</select>

我的第一个选项是无值的

找了下,原来新的版本已经解决这个问题了

* version: 2.43 (12-MAR-2010)

if (!v) // extra pain for IE...

v = (op.attributes && op.attributes['value'] && !(op.attributes['value'].specified)) ? op.text : op.value;

不过我自己没有更新js版本

解决方案是将 <option ></option>修改为:<option value=""></option>