我正在使用Ajax.ActionLink帮助程序生成删除记录的链接。这是代码:
Ajax.ActionLink("Delete Image", "DeleteImage", new { id = item.Id },
new AjaxOptions { HttpMethod = "Delete", OnSuccess = "Test()" } )
我将一个Javascript函数(Test())分配给OnSucess属性,因为我想做一些JQuery的东西,但是当我单击Delete链接时会出现此错误消息
MicrosoftAjax.js文件中的Microsoft JScript运行时错误:'b'为null或不是对象
(第5行,第62099行)。如果我删除OnSuccess属性,一切正常(即使Test()函数为空,也会引发相同的错误)。谢谢你的帮助!
答案 0 :(得分:19)
OnSuccess = "Test()"
你必须这样写它是一个回调......
OnSuccess = "Test"
答案 1 :(得分:14)
如果必须将任何参数传递给OnSuccess事件,则可能必须以这种方式编写函数。
OnSuccess = "function(){exampleFunction('" + param1 + "');}"
答案 2 :(得分:0)
要传递参数,匿名函数将无效,您需要执行以下操作:
OnSuccess = String.Format("Test({0})", param)