IE 8 jQuery无法正常工作

时间:2013-03-07 10:03:37

标签: jquery ajax internet-explorer-8 get request

我在IE 8中使用jQuery获取响应时遇到一些问题。在IE 9中(我认为它也是IE 7)和其他浏览器它运行正常。我的代码在这里:

$(document).ready(function() {
    //Hide the Animation
    $('#wait_generator').hide();
    //If an element is being selected, run the function
    $('#generator').change(function(){
        //Display the animation
        $('#wait_generator').show();
        //GET - Request at get_process.php
        //get_process simply returns a new dropdown window
        $('#result_generator').hide(); //Hide results at first
        $.get("get_process.php", {
            //Variable 'func' set to generator
            func: "generator",
            //Variable selected
            selected: $('#generator').val()
        }, 
        //GET - Response from PHP
        function(response){
            $('#result_generator').fadeOut();
            setTimeout("finishAjax_generator('result_generator', '"+escape(response)+"')", 400);
        })//End of GET Request;
        return false;
    });
});

//Displays the result
function finishAjax_generator(id, response) {
    $('#wait_generator').hide();
    $('#result_software').hide();
    $('#'+id).html(unescape(response));
    $('#'+id).fadeIn();
}

通过调试,我发现IE 8甚至没有在JSON表示法后运行“函数”(或整个get)代码。我尝试使用绝对url和其他jQuery版本并更改.php文件和... 请任何人,帮我找到任何解决方案。

1 个答案:

答案 0 :(得分:1)

尝试改变:

setTimeout("finishAjax_generator('result_generator', '"+escape(response)+"')", 400);

setTimeout(function() {
  finishAjax_generator('result_generator', escape(response));
}, 400);