javascript - MvcHtmlString 仍然编码字符

标签 javascript jquery asp.net-mvc-3 razor html-encode

我正在尝试使用 MvcHtmlString.Create 创建 JavaScript 变量。但是输出仍在编码中。

var geocode_jsonresult = @MvcHtmlString.Create(Url.Action("GeoLocation", "Generic", New With {.address = "$(this).val()"}));

创建以下输出

var geocode_jsonresult = /generic/GeoLocation?address=%24(this).val();

当它真的“应该”是

var geocode_jsonresult = /generic/GeoLocation?address=$(this).val();

如何防止这种情况发生?

注意

我使用的是 VB 而不是 C#

最佳答案

你的 JavaScript 似乎坏了。难道不应该是:

var geocode_jsonresult = 
    '@Url.Action("GeoLocation", "Generic")?address=' + 
        encodeUriComponent($(this).val());

是否尝试将服务器端 URL 帮助器与客户端值混合?

关于javascript - MvcHtmlString 仍然编码字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4264640/

相关文章:

javascript - 如何放大创建的多个流程图的 x 轴

javascript - 带有嵌套指令的 Angularjs

asp.net-mvc-3 - 如何在asp.net mvc 3中使用从 View 到 Controller 的隐藏字段值

asp.net-mvc-3 - Asp.Net MVC Application_Start 中的 Elmah 日志错误

javascript - Chrome 开发者工具探查器

javascript - 限制特定div中的jquery函数

jquery - 将 Rails 3 UJS 的 form_remote_tag 转换为 form_for

jquery - 选择全部时如何使用过滤器

javascript - 使用 jQuery 实现来回移动 div 的更简洁方法?

c# - 将 Webforms 站点移植到 MVC 需要多长时间?