繁体   English   中英

jquery.validation不适用于IE和智能手机的低音

[英]jquery.validation not working on IE and smartphone bassistance

我正在使用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();
})();

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

required:"required";
  • required规则设置为"required"会破坏规则并将其忽略。
  • 使用分号可以防止插件工作。

应该是......

required: true

另外,请检查您在自定义消息周围放置大括号的方式。

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


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

industry: "required",
amount: "required"

演示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 ,因此您无需在.validate()冗余地声明任何required规则。

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

仔细检查这个jsFiddle ...

http://jsfiddle.net/PFF4v/

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

不要使用:

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

采用 :

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM