0

我想向控制器发送一些数据,但我总是在控制器的参数中得到空值。我在寻找解决方案,但没有找到解决方案。请提供一些建议或帮助。

ajax 调用

 var submittedName = 1; 
 $.ajax(
  {
      url: '/api/monitor/Detailsfetch',
      type: "post",
      data: { 'submittedName': submittedName},
      success: function (data) {
          alert("passed");
      },
      error: function (xhr, ajaxOptions, thrownError) {
               alert(thrownError);}
  });

控制器部分

  [System.Web.Http.HttpPost]
  public ContentResult Detailsfetch(string submittedName)        
    {sone code here}`
4

2 回答 2

1

从评论和您提供的少量信息中,我猜您的路线设置不正确。如果您想对此进行测试(假设您没有更改默认规则)。尝试将参数重命名为 id(在控制器和 JS 中)。如果可行,那是因为您的路线未配置

在这种情况下,请参阅以获得帮助

基本上你应该在你的application_start

RouteTable.Routes.Add(new Route {
    Url = "[controller]/[action]/[submittedName]",
    RouteHandler = typeof(MvcRouteHandler)
})
于 2013-03-24T18:43:36.620 回答
0

在这种情况下,无法使用数据发送参数值:{'submittedName':submittedName} 所以另一种方法是在 URL 本身中传递参数数据

/api/monitor/Detailsfetch/?submittedName="+somename+"",

希望这可以帮助一些身体!

于 2013-03-26T13:47:17.447 回答