我正在使用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 和成功事件。
非常感谢任何帮助!
答案 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>