Asp.net mvc 在ASP.NET MVC中使用JavaScript中的Url值

Asp.net mvc 在ASP.NET MVC中使用JavaScript中的Url值,asp.net-mvc,razor,Asp.net Mvc,Razor,我正在开发一个ASP.NETMVC应用程序。应用程序中的Razor视图通过访问如下路径加载: http://localhost:somePort/objects/edit/{id} id是可选的。当用户访问此视图时,我初始化第三方JQuery插件。我需要从URL中获取ID值并将其放入初始化中。如果为空,请将其禁用。如果存在,请添加它。目前,我正在尝试以下方法: $(function () { var myPlugin = new Plugin("div#myId", { url:

我正在开发一个ASP.NETMVC应用程序。应用程序中的Razor视图通过访问如下路径加载:

http://localhost:somePort/objects/edit/{id}
id
是可选的。当用户访问此视图时,我初始化第三方JQuery插件。我需要从URL中获取ID值并将其放入初始化中。如果为空,请将其禁用。如果存在,请添加它。目前,我正在尝试以下方法:

$(function () {
  var myPlugin = new Plugin("div#myId", {
    url: "/api/PostData/@Request.Params["id"]",
    init: function () {
      // do stuff
    }
  });
});

不幸的是,url总是显示
/api/PostData/
。它好像在URL中看不到ID值。如何在此处输入该值?

您可以从控制器将id输入到模型中。然后你可以这样做:

$(function () {
  var myPlugin = new Plugin("div#myId", {
    url: "/api/PostData/@Model.Id,
    init: function () {
      // do stuff
    }
  });
});

为什么不直接使用Javascript Document.URL呢?