c# - Ajax 调用在 mvc 4 中不起作用

标签 c# asp.net-mvc jquery

我正在拉我的头发。为了我一生的挚爱,我无法完成这项工作。我认为有一个表格:

 <div id="cancel" class="cancel">
    <form method="post" class="cancelForm">
     <input type="hidden" class="cancelId" name="cancelId" value="@appliedLvl.LeavesId" />
    <input id="cancelMe" class="cancelMe" type="submit" value="Cancel"/>
  </form>
</div>

JavaScript

$(document).ready(function () {

$(".cancelForm").submit(function () {
    var MYcancelId = $('.cancelId').val();

    $.ajax({
        type: "POST",
        url: "/Home/Cancel",

       success: function (result) {
            alert("ok");
        },
        error: function (request, status, error) {
            debugger;
            confirm(request);
        }
    });
  })
});

和 Controller

    [HttpPost]
    public ActionResult Cancel(Guid cancelId )
    {
        //do stuff here
        return PartialView();
    }

我总是陷入ajax的错误函数中。无论我尝试过什么。同样的 javascript 代码在我的 php 项目上完美运行。不知道这里出了什么问题。提前感谢您的帮助。

编辑

这里的错误是我在操作中期望的是 Guid 而不是字符串!

最佳答案

您没有传入 cancelId 参数,因此它看不到您的 Controller 方法。

$(document).ready(function () {

$(".cancelForm").submit(function () {
    var MYcancelId = $('.cancelId').val();

$.ajax({
    type: "POST",
    url: "/Home/Cancel",
    data: { cancelId = MYcancelId },
   success: function (result) {
        alert("ok");
    },
    error: function (request, status, error) {
        debugger;
        confirm(request);
    }
});
})
});

关于c# - Ajax 调用在 mvc 4 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14449626/

相关文章:

asp.net-mvc - Elmah 日志文件删除,手动还是有设置?

javascript - 输入标签的意外标识符

c# - C#程序的自动更新

c# - ZeroMQ 套接字 Recv() 抛出 'Context was terminated' 异常 - 为什么以及如何恢复?

c# - .NET Framework 和兼容性

c# - 使用 SQL 更新特定行

asp.net-mvc - 为什么在我的 ASP MVC4 应用程序中重定向资源捆绑?

javascript - Jquery/ajax文件上传

javascript - 阻止 onclick jquery 函数以允许 onclick ajax 提交

c# - 如何在 C# 中设置这样的常量 - Constants.Page.Title.MyCase -?