如何通过AJAX调用(jQuery)发布大数据?

时间:2009-01-15 02:28:58

标签: jquery ajax

我正在尝试使用jQuery的ajax功能来更新Web表单(ASP.NET MVC)中的数据。部分数据来自文本区域,虽然数据量不大,但可以轻松超过2 KB。

似乎jQuery ajax将所有数据放入查询字符串中,因此导致IIS拒绝该URL,从而中断了调用。是否可以使用jQuery下的ajax模型将数据添加到POST请求,而不是在查询字符串中包含所有内容?

3 个答案:

答案 0 :(得分:8)

使用$.post

e.g

$.post(someUrl, { textData: $('#someInput').val() } );

$ .post只是一个围绕$ .ajax的简单包装。

$.ajax({ type :"post", 
         data : { textData: $('#someInput').val() },
         url : someUrl
      });

答案 1 :(得分:6)

是;根据{{​​3}},您可以使用jQuery.post来发布数据。

如果您想发布现有表单,请使用:

var form = $("#myform"); // or whatever
$.post(form.get()[0].action, form.serialize(), function(data) {
    // data received
}, "xml");

答案 2 :(得分:0)

您可以使用FormData:

var formData = new FormData();
formData.append('filename', filename);
formData.append('data', data);
$.ajax({
    url: "FileUploadServlet",
    type: "POST",
    data: formData,
    cache: false,
    contentType: false,
    processData: false});