【问题标题】:Use the controller name from Javascript in the Url.Action在 Url.Action 中使用来自 Javascript 的控制器名称
【发布时间】:2019-07-24 15:52:44
【问题描述】:

我正在从 javascript 函数中以字符串形式检索控制器名称,并且需要在 Url.Action 中传递控制器名称。任何建议都会有所帮助。

var controllerName = "MyController";
var id=1;
@Url.Action("LoadAction","'"+ controllerName +"'")?id=' + id
// Here i am unable to pass controllerName, defined using javascript.

谢谢。

【问题讨论】:

  • C#代码在服务端执行,JavaScript代码在客户端执行。你想做的事情是不可能的。您应该说明您的实际目标是什么,以便人们提出解决方案。
  • this。我认为这会对你有所帮助。

标签: javascript asp.net-mvc


【解决方案1】:

如果你想将数据从 js 脚本发送到 C# 控制器,那么你可以使用 Jquery-ajax 调用而不是 @Url.Action,如果我没记错的话,你甚至不能使用 @Url.Action在一个 js 源代码上。

const sendId = () => {
    const controllerName = 'MyController';
    const id = 1;
    $.ajax({
          contentType: 'application/json',
          data: { myId: id },
          url: `${controllerName}/methodName`, //template string
          type: 'POST',
          success: function (data) {
             //...
          },
          failed: function () {
            //...
          }
     });
  }

【讨论】:

    猜你喜欢
    • 2019-10-14
    • 1970-01-01
    • 2011-05-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多