【发布时间】:2009-11-08 03:29:21
【问题描述】:
我不知道发生了什么,但我的 jquery validate 插件 (1.5.5) 无法正常工作,我不确定我在 firefox 上进行了大部分测试后多久了。
问题是,我转到 jquery 对其进行验证的表单之一,然后点击“创建”按钮,我的验证按应有的方式启动,并在包括 IE8 在内的所有浏览器中正确执行此操作。现在它不起作用的地方是我这样做的时候。
我选择第一个下拉列表并选择一些东西。然后点击“创建”,现在所有验证错误都会显示出来,除了第一个下拉框的错误。
它在除 IE 8 之外的所有浏览器中都执行此操作。我明白了
网页错误详情
用户代理:Mozilla/4.0(兼容; MSIE 8.0;视窗 NT 6.1; WIN64; x64; 三叉戟/4.0; .NET CLR 2.0.50727; SLCC2; .NET CLR 3.5.30729; .NET CLR 3.0.30729;媒体中心PC 6.0; Tablet PC 2.0) 时间戳:2009 年 11 月 8 日,星期日 03:26:08 UTC
消息:需要对象行:890 字符:5 代码:0 URI: http://localhost:3668/Scripts/Plugins-Development/jquery.validate.js
这是第 890 行的内容
return options.length > 0 && ( element.type == "select-multiple" || ($.browser.msie && !(options[0].attributes['value'].specified) ? options[0].text : options[0].value).length > 0);
这就像整个方法块。
methods: {
// http://docs.jquery.com/Plugins/Validation/Methods/required
required: function(value, element, param) {
// check if dependency is met
if ( !this.depend(param, element) )
return "dependency-mismatch";
switch( element.nodeName.toLowerCase() ) {
case 'select':
var options = $("option:selected", element);
return options.length > 0 && ( element.type == "select-multiple" || ($.browser.msie && !(options[0].attributes['value'].specified) ? options[0].text : options[0].value).length > 0);
case 'input':
if ( this.checkable(element) )
return this.getLength(value, element) > 0;
default:
return $.trim(value).length > 0;
}
},
不知道发生了什么。
【问题讨论】:
标签: jquery internet-explorer internet-explorer-8 jquery-validate