jquery ajax 调用 Controller 正在发布空字符串

标签 jquery ajax asp.net-mvc-4 post

我将车辆的 id 从 jquery ajax post 发布到 Controller 。Ajax 调用正在调用 Controller 方法,但该字符串始终为空。我在网上搜索了很多,但任何解决方案都不起作用。id 在 View 中具有值,但为空在 Controller 中。请帮助我。

这是我的代码: 查看

          <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);
});

Controller

        public ActionResult DeleteVehicle(string id)
        {

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

最佳答案

您是否在操作方法上添加了 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

关于jquery ajax 调用 Controller 正在发布空字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22706102/

相关文章:

javascript - 自动播放多个项目?

javascript - 使用 jquery 的 clone() 时,是否有跨浏览器的方法来忽略不透明度?

jquery - 向 jquery 计数器添加逗号

javascript - AJAX Post 使用 Python 和 javascript 存储 JSON

javascript - backbone.js(下划线模板)附加砌体

ajax - 要求Chrome像在Firefox中那样绕过XmlHttpRequest的本地缓存?

javascript - “数学”是嵌入对象中的未定义错误

c# - 路由映射不适用于 "area"

asp.net-mvc - SignalR 客户端在每次刷新页面时断开/连接。 ASP.NET MVC

c# - 无法首先从 EF 代码打开生成的数据库