[英]How to use a javascript variable in url.action with ASP.NET MVC WebForms view engine
[英]Use Separate js File And use Url Helpers in it with ASP.NEt MVC 3 and Razor View Engine
我在这里问一个类似的问题, Darin Dimitrov
回答说我们不能在单独的js文件中使用Url helper,如$.ajax({ url: '@Url.Action("Index")', . . .
那么你的建议是什么在视图页面中使用Url helper并将其传递给javascript,我不想使用硬编码网址,我需要使用Url帮助程序找到它。
使用隐藏字段存储您的网址,然后使用javascript读取隐藏字段,然后在您的代码中使用它。 这样,您可以将JS文件与视图分开。 像这样的东西:
//In Your View
@Html.Hidden("MyURL", Url.Action("Index"))
//In Your JS
var myUrl = $("#MyURL").val();
$.ajax({ url: myUrl , . . .
最简单的方法是创建一个名为something的全局变量,并在外部JS中引用它
var baseURL = '@Url.Action("Index")';
在你的外部JS
$.ajax({ url: baseURL + "Action"
不需要隐藏字段,即使这在外部.js文件中也有效。
var myUrl = / ControllerName / ActionName;
$.ajax({ url: myUrl , . .
看看使用部分Razor视图生成外部JavaScript文件 。 在这篇博客文章中,我将介绍如何使用常规Razor视图和自定义操作过滤器来呈现可能包含Razor代码的外部JavaScript文件。
我对raklos使用了类似的方法,但是想要在所有地方获得根目录路径,所以我选择了下面的代码。
@Html.Hidden("AppUrl", Url.Content("~"))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.