0

我正在使用 bassistance jquery.validation,它适用于 ff 和 chrome,但不适用于移动设备和 IE。网站上的示例运行良好,但在我的项目中只有一次 ff 和 chrome。我正在使用红宝石和导轨。

使用此设置

(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();
})();
4

2 回答 2

2

我根本不了解您的代码在任何浏览器中的工作方式......

required:"required";
  • required规则设置为"required"违反规则并被忽略。
  • 使用分号会阻止插件工作。

应该是这个...

required: true

此外,请检查您如何在自定义消息周围放置大括号。

演示:http: //jsfiddle.net/Lks8E/


或者,您可以这样做。请注意我们在这种情况下如何使用字段名称,它们用逗号分隔。

industry: "required",
amount: "required"

演示 2:http: //jsfiddle.net/Lks8E/1/


根据 OP 的评论进行编辑:

这就是我<input type="text" name="desired_amount" class="madlibs_enter_amount" placeholder="enter a amount" required > 应该在此处添加的 html 外观required="true"吗?

这解释了为什么您的代码可以在某些浏览器中运行。由于您requiredinput元素内,HTML 5 验证接管了插件失败的地方。

不,你已经有一个required attribute,为什么还要添加另一个...... required="true"?虽然,最好用正确的 HTML 5 语法替换它,required="required". 请参阅: https ://stackoverflow.com/a/3012975/594235

而且由于您已经required attribute在 HTML 中拥有 ,因此您不需要required.validate().

$('#madlibs_form').validate();

仔细检查这个 jsFiddle ......

http://jsfiddle.net/PFF4v/

于 2013-03-21T16:17:10.513 回答
0

修复问题 jquery validate + jquery (1.4.4 ) 不工作 IE 7:

不要使用:

$('#form').validate({
 rules : {
  name : "required"
 }
});

采用 :

$('#form').validate({
 rules : {
  name : {
   required : true
  }
 }
});
于 2013-04-26T04:24:19.340 回答