Ajax.BeginForm无法正确发布

时间:2011-05-05 21:09:29

标签: ajax asp.net-mvc-3 post razor

我有一个简单的要求,我似乎无法满足:我有一个产品页面。产品有供应商,供应商输入是带有自动完成的文本字段。如果用户输入数据库中不存在的供应商,我需要添加它。添加它我在页面上有一个DIV,我通过调用我的/ Vendor / Create控制器方法来调用我。该方法的视图使用:

@using (Ajax.BeginForm("Create", "Vendor", new AjaxOptions {
     UpdateTargetId = ViewBag.TargetId,
     HttpMethod = "Post", 
     OnSuccess="VendorCreated", 
     OnComplete="alert('success')"
})) {

应该通过ajax发布我的表单,完成后调用Javascript。我遇到的问题是,在提交时我的整个页面都会刷新,这样当我开始使用/ Product / Create时,我最终会使用/ Vendor / Create。另外,OnSuccess和OnComplete都不会被调用。

我在这里做错了什么?

1 个答案:

答案 0 :(得分:2)

确保您已将以下脚本包含在您的页面中:

jquery-1.5.1.js
jquery.unobtrusive-ajax.js

并且在web.config中启用了不显眼的javascript:

<add key="UnobtrusiveJavaScriptEnabled" value="true" />