Jquery验证IE上的错误:[Object object]

时间:2014-02-19 11:04:08

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

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

这是我的代码:

$(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部件时,它工作得很好......

有什么想法吗?谢谢你的时间!

1 个答案:

答案 0 :(得分:1)

如果您坚持使用锚<a>标记,而不是正确的提交按钮,则无需使用内联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
    });

});