对Ajax.begdon';行不通

对Ajax.begdon';行不通,ajax,asp.net-mvc-3,callback,razor,Ajax,Asp.net Mvc 3,Callback,Razor,我很难让回拨用于表单。我有这样的想法: <script> function VendorCreated() { alert('ok'); } </script> @using (Ajax.BeginForm("Create", "Vendor", new AjaxOptions { UpdateTargetId = ViewBag.TargetId, HttpMethod = "Post", OnSuccess="VendorCreate

我很难让回拨用于表单。我有这样的想法:

<script>
function VendorCreated() {
  alert('ok');
}
</script>

@using (Ajax.BeginForm("Create", "Vendor", new AjaxOptions {
    UpdateTargetId = ViewBag.TargetId, 
    HttpMethod = "Post", 
    OnSuccess="VendorCreated",
    })) {
它很好用。我也试过:

OnSuccess="function() { VendorCreated(); }"
但我得到一个运行时错误。其他人也有这个问题,但我没有找到解决方案,请参见和


如果我查看IE调试器(F12),我在生成的代码中没有看到脚本标记。。。正确的方法是什么?

您是否在页面中包含
jquery.unobtrusive.ajax.js

好的,我已经把问题缩小了。。。上面的代码是由一个视图生成的,该视图通过jQuery加载到另一个视图中的DIV中。我最近发现,我可以使用@Html.Action()在另一个视图中包含一个视图,这样做似乎可以解决上述问题。我现在收到回电了


对于任何有这种倾向的人来说,解释一下为什么一个有效而另一个无效都是很好的。

是的,否则我根本不会收到回访(我知道,因为我以前没有收到回访,所以我没有收到回访……现在我收到了回访,但仅如上所述)
OnSuccess="function() { VendorCreated(); }"