将Javascript函数分配给AjaxOptions OnSuccess属性引发错误 - ASP.NET MVC

seg*_*aco 10 asp.net-mvc asp.net-ajax

我正在使用Ajax.ActionLink帮助程序生成删除记录的链接.这是代码:

Ajax.ActionLink("Delete Image", "DeleteImage", new { id = item.Id },
                                               new AjaxOptions { HttpMethod = "Delete", OnSuccess = "Test()" } )
Run Code Online (Sandbox Code Playgroud)

我将一个Javascript函数(Test())分配给OnSucess属性,因为我想做一些JQuery的东西,但当我单击Delete链接时,会出现此错误消息

Microsoft JScript运行时错误:'b'为null或不是对象

在MicrosoftAjax.js文件中(第5行,第62099行).如果我删除OnSuccess属性,一切正常(即使Test()函数为空,也会引发相同的错误).谢谢你的帮助!

sil*_*ter 19

OnSuccess = "Test()" 
Run Code Online (Sandbox Code Playgroud)

你必须像这样写它是一个回调...

OnSuccess = "Test"
Run Code Online (Sandbox Code Playgroud)


atz*_*tzu 14

如果必须将任何参数传递给OnSuccess事件,则可能必须以这种方式编写函数.

OnSuccess = "function(){exampleFunction('" + param1 + "');}"
Run Code Online (Sandbox Code Playgroud)