gpt4 book ai didi

asp.net-mvc - 强制 Razor 不转义网址

转载 作者:行者123 更新时间:2023-12-04 10:20:46 25 4
gpt4 key购买 nike

Razor 的自动逃生功能让我很困惑。我正在构建一个 url 来提供给 jquery 的 $.load 方法:

<script>
$("#baz").load('@Url.Action("Method", new { foo=Model.Foo, bar=Model.Bar })');
<script>

问题是,url 在发出的脚本中被转义 (& == &)
<script>
$("#baz").load('Method?foo=Foo&amp;bar=Bar');
<script>

所以 MVC 对请求说没有提供 bar 参数感到窒息。

我试过将调用包装在 @Html.Raw 中,但这似乎仍然逃避了 url。回到aspx 星球,我只会做<%= 而不是<%: 但显然这在这里不好:)。我还尝试将参数放在 $.load 的数据对象中,但这似乎强制发布,而不是获取(我想要获取此处)。

这是我可以通过路由解决的问题,但是这个项目还没有 - 仍然可以在不干扰路由的情况下降低功能。另一方面,我需要能够最终路由这个 url,所以我不想只是硬编码查询字符串。

有什么想法吗?

最佳答案

我刚刚运行了一个测试,并且在我的测试中没有使用 Html.Raw 对&符号进行编码,如下所示:

@Html.Raw(Url.Action("Method", new { foo = Model.Foo, bar = Model.Bar }))

关于asp.net-mvc - 强制 Razor 不转义网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7840265/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com