ASP.NET MVC3和jquery表单插件

时间:2011-04-19 15:03:08

标签: c# jquery asp.net-mvc-3 jquery-plugins

我正在使用ASP.NET MCV3,jquery 1.5.2和jquery表单插件 这是示例代码:

<script type="text/javascript">
    // wait for the DOM to be loaded
    $(document).ready(function () {
        $('#uploadForm').ajaxForm({
            dataType: 'json',
            beforeSubmit: function () { alert('beforeSubmit'); },
            success: function() { alert('success'); },
            error: function () { alert('error'); }
        });
    });
</script>

<form id="uploadForm" action="@Url.Action("UploadFile")" method="post"> 
    <input type="submit" value="Submit file" /> 
</form>

[AcceptVerbs(HttpVerbs.Post)]
public JsonResult UploadFile()
{
    return Json(new { message = "success" });
}

当我提交表单时,我总是收到以下错误消息:预期';'
我搜索了SO,Google ..但找不到解决这个问题的方法。

我找到了Darin的评论here,但我需要 beforeSubmit 成功事件。

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

我将dataType从json更改为text,然后我解析了结果。一切都能正常工作。

<script type="text/javascript">
    // wait for the DOM to be loaded
    $(document).ready(function () {
        $('#uploadForm').ajaxForm({
            dataType: 'text',
            beforeSubmit: function () { alert('beforeSubmit'); },
            success: processJson,
            error: function () { alert('error'); }
        });
    });

    function processJson(responseJson) {
        var obj = jQuery.parseJSON(responseJson);
        alert(obj.message);
    }
</script>