javascript - 如何在 Url.Action() 中传递多个参数

标签 javascript asp.net-mvc parameters actionresult

我想从 Url.Action 传递多个参数,这是 View 中的代码

 window.location.href = "@Url.Action("ABC", "XYZ", new { @A= ViewBag.A , @B =  ViewBag.B })";

这是我在 Controller XYZ

中的方法
 public ActionResult ABC(string A, string B)
 {
    // Some Code
 }

我总是只在第一个参数中获取值,而第二个参数始终为空。如果我先是B,要么。第二个总是空的。 VIEW 基本上在 JavaScript 函数下。 这是 URL:http://localhost/CargoMainSite/XYZ/ABC?A=1&B=2 请注意参数一和参数二之间有一些额外的文本,即“amp;”如果我明确删除它。它工作正常并获得正确的值。

最佳答案

Url.Action 不工作的原因是 url 中的 & 字符被编码,所以你必须使用 @Html.Raw 如下

 window.location.href = "@Html.Raw(@Url.Action("ABC", "XYZ", new { @A= ViewBag.A , @B =  ViewBag.B }))";

关于javascript - 如何在 Url.Action() 中传递多个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29604626/

相关文章:

c# - 在 VS2005 中获取 C# 变量的确认框的输入

c# - 单独组装和路由中的 Controller

c# - 将简单对象转换为简单通用的接口(interface)

python - 在 scipy 最小化期间​​打印当前评估的参数

C++ 如何创建一个具有可选参数的函数

javascript - 如何在 webview (Ionic) 中将手机扬声器设置为默认音频输出

javascript - webpack 中的条件要求文件

javascript - Vue.js 动态使用字符串

asp.net-mvc - 使用 MVCContrib 网格进行编辑

asp.net-mvc - MVC 请求生命周期 - 何时/如果发生对象处置?