在Ajax发布后,服务器响应无法正确反映

时间:2014-11-14 01:41:17

标签: javascript jquery ajax iframe

我使用 jquery.iframe-transport.js 上传文件,使用IFrame& Ajax(使用Internet Explorer) 文件已正确上载,服务器会响应每个呼叫的相应响应。但是,回调函数“完成”中的响应“数据”始终包含上一个/较早的响应。即使清除缓存和使用新的浏览器似乎也没有帮助。知道必须发生什么吗?

$(function() {
    //alert("Loading");

    getLDAPUsers();
    //getDummyUsers();

    //This will submit the file content using Ajax via Iframe
    $("#myForm").submit(function() {
        alert("Submitting Ajax");
        $.ajax(this.action, {
            data: $(":text", this).serializeArray(),
            files: $(":file", this),
            //iframe: true,
            processData:false
        }).complete(function(data) {
        debugger;
            alert("Response from server ::: "+data.responseText);
        });
    });

1 个答案:

答案 0 :(得分:0)

我建议你改用“成功”和“错误”,例如:

$(function() {
    $("#myForm").on('submit',function(event) {
    event.preventDefault();

    //alert("Loading");

    getLDAPUsers();
    //getDummyUsers();

    var request = $.ajax({
      type: 'POST',
      url: $(this).attr('action'),
      data: $(":text", this).serializeArray(),
      files: $(":file", this),
      //iframe: true,
      ifModified: true,
      cache: false,
      success: function (response, textStatus, xhr) {
        alert("Response from server ::: "+response);
      },
      error: function (xhr, textStatus, errorThrown) {
        alert('ERROR');
      }
    });
  });
})();