【问题标题】:Jquery Validate bug on IE : [Object object]Jquery 验证 IE 上的错误:[对象对象]
【发布时间】:2014-02-19 11:04:08
【问题描述】:

我在 IE 和 FF 上的 JQuery Validate 有问题(它在 Chrome 上运行良好)。 这将我重定向到仅显示“[对象对象]”的空白页面。 编辑:事实上,页面正确加载了错误消息,但在不到一秒后重新加载到这个空白页面。

这是我的代码:

$(document).ready(function () {
            $('#myForm').validate(
            {
                rules: {
                    Quantity: { required: true, number: true, min: 1 }
                },
                messages: {
                    Quantity: { required: 'QuantityRequired', number: 'QuantityDigit', min: 'QuantityRequired' }
                },
                errorLabelContainer: '#errorList',
                wrapper: 'p'
            });
        });

还有cshtml:

<div id="errorList"></div>
@using (Html.BeginForm("Create", "Management", FormMethod.Post, new { @id = "myForm" })) {
 @Html.AntiForgeryToken()
 <label>NumberVoucherConcern *</label>
 <span>@Html.TextBoxFor(model => model.Quantity)</span>
 <a href="javascript:$('#myForm').submit();">Send</a>
}

我想到了库冲突或其他问题,但是当我评论这个 JS 部分时,它工作正常......

有什么想法吗?感谢您的宝贵时间!

【问题讨论】:

  • 请只显示浏览器看到的渲染 HTML,而不是您的服务器代码。

标签: jquery internet-explorer firefox razor jquery-validate


【解决方案1】:

如果您坚持使用锚点 &lt;a&gt; 标记代替适当的提交按钮,则无需使用内联 JavaScript...

<a href="javascript:$('#myForm').submit();">Send</a>

你可以用 jQuery 代替...

HTML

<a href="#" id="send">Send</a>

jQuery

$(document).ready(function () {

    $('#myForm').validate({  // initialize validate plugin
        // ..... // your rules & options
    });

    $('#send').on('click', function(e) {  // capture click of anchor
        e.preventDefault();     // block the default anchor behavior
        $('#myForm').submit();  // submit the form
    });

});

【讨论】:

  • 谢谢!就是这样!
猜你喜欢
  • 1970-01-01
  • 2021-11-22
  • 2012-06-09
  • 2012-11-11
  • 2013-02-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-06
相关资源
最近更新 更多