【问题标题】:How can I give Javascript variable in @Ur l.Content method (Asp.net MVC razor)如何在@Ur l.Content 方法中提供 Javascript 变量(Asp.net MVC 剃须刀)
【发布时间】:2015-03-10 11:12:57
【问题描述】:

这是使用 asp.net mvc razor 的 JQuery 代码。第 3 行有错误。 如何在 @Url.Content 方法中提供 Javascript 变量

var hrf = $(".btndiv a").attr("href");
hrf = "~"+hrf;
hrf = @Url.Content(hrf);

场景:

我正在从数据库中获取 html。但我必须解析 (~) 标签。 从 db 中获取 html 是:

 <a class="btn btnBlue" href="~/Order/Cricket?id=29">View order (A)</a>

【问题讨论】:

  • 你不能。 Razor 代码在发送到视图之前在服务器上进行解析。那时甚至不存在 javascript 变量(客户端)(它不是范围)

标签: javascript c# jquery asp.net-mvc razor


【解决方案1】:

您将无法将 JavaScript 变量转换为 Razor 变量。 Razor 变量由 Razor 引擎处理,而 JavaScript 是在客户端上运行的客户端语言。

您可以将 Razor 变量作为基本 URL 存储在 JavaScript 变量中,以便以后使用。

var baseUrl = '@Url.Content("~")'; //Store base URL
var hrf = $(".btndiv a").attr("href");
hrf = hrf.replace("~", baseUrl); //Use it as required

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-05-16
    • 2011-04-12
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多