代码之家  ›  专栏  ›  技术社区  ›  Darren Oster

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

  •  6
  • Darren Oster  · 技术社区  · 17 年前

    我试图使用jQuery的ajax功能来更新web表单(ASP.NET MVC)中的数据。部分数据来自文本区域,虽然数据量不大,但很容易超过2KB。

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

    3 回复  |  直到 17 年前
        1
  •  9
  •   redsquare    17 年前

    使用 $.post

    例如

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

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

    $.ajax({ type :"post", 
             data : { textData: $('#someInput').val() },
             url : someUrl
          });
    
        2
  •  6
  •   strager    17 年前

    对;根据 jQuery's documentation ,您可以使用 jQuery.post POST数据。

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

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

    您可以使用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});