我正在使用bassistance jquery.validation,它适用于ff和chrome,但不适用于移动和IE。网站上的示例工作正常,但在我的项目中只有ff和chrome。我正在使用红宝石和铁轨。
使用此setup。
(function() {
// use custom tooltip; disable animations for now to work around lack of refresh method on tooltip
$("#madlibs_form").tooltip({
show: false,
hide: false
});
// validate signup form on keyup and submit
$("#madlibs_form").validate({
rules: {
industry: {
required:"required";
},
amount: {
required:"required";
}
},
messages: {
desired_amount: {
required:{"Please enter loan amount"}
}
});
$("#madlibs_form input:not(:submit)").addClass("ui-widget-content");
$(":submit").button();
})();
答案 0 :(得分:2)
我不了解your code在任何浏览器中的运作方式......
required:"required";
required
规则设置为"required"
会破坏规则,但会被忽略。应该是......
required: true
另外,请检查您在自定义消息周围放置大括号的方式。
DEMO:http://jsfiddle.net/Lks8E/
或者,你可以这样做。请注意我们在这种情况下如何使用字段名称,并用逗号分隔。
industry: "required",
amount: "required"
DEMO 2:http://jsfiddle.net/Lks8E/1/
根据OP的评论进行编辑:
这就是我的html外观
<input type="text" name="desired_amount" class="madlibs_enter_amount" placeholder="enter a amount" required >
我应该在这里添加required="true"
吗?
这解释了为什么您的代码在某些浏览器中有效。由于您在required
元素中有input
,因此HTML 5验证会接管插件失败的位置。
没有。你在那里有一个required
attribute
,你为什么还要添加另一个...... required="true"
?虽然,最好用适当的HTML 5语法required="required"
替换它。请参阅:https://stackoverflow.com/a/3012975/594235
由于HTML中已经有required
attribute
,因此您无需在required
内冗余声明任何.validate()
规则。
$('#madlibs_form').validate();
仔细检查这个jsFiddle ......
<强> http://jsfiddle.net/PFF4v/ 强>
答案 1 :(得分:0)
修复问题jquery validate + jquery(1.4.4)不工作IE 7:
不要使用:
$('#form').validate({
rules : {
name : "required"
}
});
使用:
$('#form').validate({
rules : {
name : {
required : true
}
}
});