使用MVC中的$ .ajax发布数据

时间:2015-09-09 16:54:02

标签: javascript jquery ajax asp.net-mvc asp.net-mvc-4

我有以下的ajax请求

var data = { ID: "data" };
$.ajax({
    type: "POST",
    cache: false,
    url: url,
    data:data,
    processData: false,
    contentType: false,
    success: function (result) {},
    error: function (response) {}
});

我有这个MVC控制器

[HttpPost]
public ActionResult Test(string ID)
{          
    return Json(new { isSuccess = true }, JsonRequestBehavior.AllowGet);
}

问题是在控制器中ID出现空值。如果我使用formdata然后它的工作原理。我不能使用formdata,因为它不适用于IE9。我有一些与IFrames合作的东西,但它太复杂了,而且是一种黑客攻击。

var fd = new FormData();
fd.append("ID", "data");

有人可以告诉我如何让它发挥作用。还有我们如何在不使用formdata的情况下将文件传输到服务器。

1 个答案:

答案 0 :(得分:0)

尝试使用

$.post(url, data)
    .done(successClbck)
    .fail(errorClbck)

而不是$.ajax。它适用于所有数据对象,但不适用于文件