0

以下 ajax 请求适用于所有浏览器,但不适用于 chrome 版本 28.XX。有人请告诉我,这段代码有什么问题?

     var output = '';

      $.ajax({
        url      : "PageController/CurrencyController.php",
        data     : formData,
        dataType : "text",        
        async    : false,
        success  : function(html, textStatus, XMLHttpRequest) {
                   alert(" ajax done"+html);
            if ( html != '' ) {
                output = html;
            }
        },
        error: function(XMLHttpRequest, textStatus, errorThrown) {
             alert("Req "+XMLHttpRequest +" status "+textStatus+"  Error "+errorThrown);
        }
});

alert(" ajax done"+html);在 Chrome 中不起作用,但在其他浏览器中会弹出。

4

1 回答 1

1

也许问题在于XMLHttpRequest用作函数参数名称。那是一个保留字。尝试改变它xhr

 var output = '';

 $.ajax({
    url      : "PageController/CurrencyController.php",
    data     : formData,
    dataType : "text",        
    async    : false,
    success  : function(html, textStatus, xhr) {
        alert(" ajax done"+html);
        if ( html != '' ) {
            output = html;
        }
    },
    error    : function(xhr, textStatus, errorThrown) {
         alert("Req "+xhr+" status "+textStatus+"  Error "+errorThrown);
    }
});

更多关于 XMLHttpRequest

于 2013-08-16T13:05:01.447 回答