asp.net mvc 3 -从javascript调用Action方法

asp.net mvc 3 - Calling Action method from javascript

本文关键字:javascript 调用 Action 方法 net mvc asp      更新时间:2023-09-26

如果我需要从javascript代码中调用某个控制器的动作方法我可以通过href调用它,对吧?像这样:

 $.colorbox({ href: '/Calendar/SessionPropertiesEditbox?starts='+start+' })

那没用的。问题是确切的链接也应该包括域名。但是你不知道域名是什么。今天可能是"http://localhost:7741",明天可能完全不同。

那么如何在javascript代码中模拟ActionLink行为?

你错了;可以的。

这是一个域名相对路径,所以浏览器会自动添加当前域名。

如果应用程序不在域根目录下运行,它将无法工作,因为它将在域根目录下查找。
如果是这样,您需要调用Url.Action并将其结果传递给Javascript。

在Razor视图中,它看起来像

<script>
    var url = "@Server.JavaScriptStringEncode(Url.Action(...))";
</script>

尝试使用JsActionhttp://jsaction.codeplex.com