如何回忆失败的ajax?

时间:2014-03-21 10:33:24

标签: javascript jquery jsp

这是我的ajax电话

 $.ajax({
        url: "getProduct",
        type: "POST",
        dataType: "xml",
        data: {
            productid: $("#serviceequip1").val()
            },
        error: function(){  
        },
        success: function(xml){   
            $(xml).find("product").each(function()
            {

                //do something.. 
            });


        }
    });

我已经检查了浏览器的开发模式,有时它显示了ajax调用的505错误。

请提出一些解决方案。

2 个答案:

答案 0 :(得分:1)

定义一个执行ajax调用的函数。出错时,再次调用该函数。

 function getProduct(){
 $.ajax({
        url: "getProduct",
        type: "POST",
        dataType: "xml",
        data: {
            productid: $("#serviceequip1").val()
            },
        error: function(){ 
                setTimeout(getProduct, 200);
        },
        success: function(xml){   
            $(xml).find("product").each(function()
            {
                //do something.. 
            });
        }
    });
  };

答案 1 :(得分:0)

只需在方法中编写此ajax调用,然后在ajax的失败块中再次调用该方法。

function ajaxCall(){
 $.ajax({
        url: "getProduct",
        type: "POST",
        dataType: "xml",
        data: {
            productid: $("#serviceequip1").val()
            },
        error: function(){  
ajaxCall();
        },
        success: function(xml){   
            $(xml).find("product").each(function()
            {

                //do something.. 
            });


        }
    });
}