【发布时间】:2016-12-16 23:10:40
【问题描述】:
我想包含一个带有 razor 的 JavaScript 文件
<script src="@ScriptPath"></script>
除了我需要在我做之前根据@ScriptPath inside JavaScript 动态更改一些路径名。像全部替换这样的东西就可以了。
可以实现吗?如何使用剃须刀或/和控制器来实现?
【问题讨论】:
标签: javascript vb.net razor asp.net-mvc-5
我想包含一个带有 razor 的 JavaScript 文件
<script src="@ScriptPath"></script>
除了我需要在我做之前根据@ScriptPath inside JavaScript 动态更改一些路径名。像全部替换这样的东西就可以了。
可以实现吗?如何使用剃须刀或/和控制器来实现?
【问题讨论】:
标签: javascript vb.net razor asp.net-mvc-5
C# 等效项
public ActionResult XYZ()
{
ViewData["ScriptPath"] = "insert remote link"; or HttpContext.Server.MapPath("~/Scripts/somescript.js");
return View();
}
<script src='@ViewData["ScriptPath"]' type='text/javascript'></script>
【讨论】:
您应该将这些路径存储在某个数据库中,当然还有 id'ed。一旦页面在客户端加载,使用 Ajax 通过从脚本标签的 src 属性中提取某些标识字符串并将检索到的数据分配给您的代码中的某些变量来获取代码中的路径代码并做任何你想做的事情。同样,请记住在您的路径名中包含某些 id,这样如果您打算只加载完成或编辑路径名的特定字符串 sn-ps,这将很有用。
我希望这会有所帮助,因为这类问题实际上不需要编码响应,您似乎已经解决了其余问题。
【讨论】: