2014-03-28 19 views
1

我发布车辆的id从控制器从jquery ajax post.Ajax调用正在调用控制器方法,但该字符串始终为null.I在网上搜索了很多,但任何解决方案都不是working.id在视图中有价值,但在controller.please中无效帮助我。jquery ajax调用控制器是张贴空字符串

这里是我的代码: 查看

  <script type="text/javascript"> 
      function DeleteVehicle(id) { 
      alert("working"); 
      if (confirm("Do you want to delete vehicle: " + id)) { 
     // var requestData = { 'vehicleId': vid } 
     var dataPost={'id':id} 
     $.ajax({ 



      url: '@Url.Action("DeleteVehicle", "Vehicle")', 
      type: 'POST', 
      data: dataPost, 
      success: function (data) { 
       alert("Success, sent data to controller"); 
      }, 
      error: function (data) { 
        alert("Error: " + data.responseText); 
       } 

     }); 
    } 
} 

$(function() {//when the document is ready 
    $("#Delete").click(DeleteVehicle); 
}); 

控制器

 public ActionResult DeleteVehicle(string id) 
     { 

      //code 
       return Json(id, JsonRequestBehavior.AllowGet); 
     } 
+0

在删除点击功能不通过车辆编号 – 111

+0

如果我不通过车辆编号控制器删除功能我怎么能得到它?我必须用它来查询 – Wasfa

回答

2

有你把httppost在下面的操作方法的属性?

[httpPost] 
public ActionResult DeleteVehicle(string id) 
     { 

      //code 
       return Json(id, JsonRequestBehavior.AllowGet); 
     } 

和jQuery的

$(document).ready(function() { 
     $("#Delete").on("click", function(){ 
     var id = $(this).).attr("id"); ////fetch id wherever you are fetching 
     alert("working"); 
       if (confirm("Do you want to delete vehicle: " + id)) { 
      // var requestData = { 'vehicleId': vid } 
      var dataPost={'id':id} 
      $.ajax({ 



       url: '@Url.Action("DeleteVehicle", "Vehicle")', 
       type: 'POST', 
       data: dataPost, 
       success: function (data) { 
        alert("Success, sent data to controller"); 
       }, 
       error: function (data) { 
         alert("Error: " + data.responseText); 
        } 

      }); 
     } 


    }); 

更多信息,看看这个

MVC Deleting record using Javascript pop up

+0

是的,我把[httpPost]动词从删除方法 – Wasfa

+0

你从哪里获得ID?因为你的代码你没有传递id到函数“DeleteVehicle”@Wasfa – Neel

+0

我通过jquery ajax调用发布的id,我在控制器参数 – Wasfa

1

var dataPost应该是字符串,像var dataPost = '{"id":"' + id + '"}'$.ajax额外设置如下 - >

contentType: "application/json; charset=utf-8", 
dataType: "json", 
+0

我试过这一个,但再次id字符串为空在控制器 – Wasfa

0

试图把[HttpPost]属性在你的行动,然后再试一次。

+0

我尝试这一个,但字符串ID为null – Wasfa

+0

在你Ajax调用add'contentType:“application/json”'aftr'datapost' – 2014-03-28 07:17:23

+0

我加了这个但id仍然为空 – Wasfa

相关问题