在IE8中,Jquery Ajax调用不能正常工作

时间:2011-07-11 14:03:12

标签: javascript jquery ajax

我正在从数据库中生成一些活泼的数据,并且每一行都有一些链接可以做一些事情。

他们的工作完美无缺,除了我实施的最后一个似乎没有在IE上工作

$('.lockFile').click(function(){
var url = "functions/lock_call.php";
var unlock = 'assets/lock-unlock.png';
var lock = 'assets/lock.png';
var action = 'unlock';
var id = $(this).parent().parent().attr('id');
var image = $(this).children(0);
if (image.attr('src') == unlock)
    action = 'lock';
var data = 'id='+id+'&action='+action;
$.ajax({
    type: "POST",
    url: url,
    data: data,
    cache: false,
    success: function(){
        alert (action);
        if (action == 'lock')
            image.attr('src', lock);
        else
            image.attr('src', unlock);
    }
});
return false;

});

可能出现什么问题?

警报是关于“成功”的表演者,但没有任何表现。也就是说,脚本不会运行。

2 个答案:

答案 0 :(得分:1)

IE 8保留了一些惊人的变量,试试这个

$('.lockFile').click(function(){
                            var Aurl = "functions/lock_call.php";
                            var AunAlock = 'assets/lock-unlock.png';
                            var Alock = 'assets/lock.png';
                            var Aaction = 'AunAlock';
                            var Aid = $(this).parent().parent().attr('id');
                            var Aimage = $(this).children(0);
                            if (image.attr('src') == AunAlock)
                                Aaction = 'Alock';
                            var data = 'id='+Aid+'&action='+Aaction;
                            $.ajax({
                                type: "POST",
                                url: Aurl,
                                data: data,
                                cache: false,
                                success: function(){
                                    alert (Aaction);
                                    if (Aaction == 'lock')
                                        Aimage.attr('src', Alock);
                                    else
                                        Aimage.attr('src', AunAlock);
                                }
                            });
                            return false;
                        });

答案 1 :(得分:0)

尝试以JSON格式声明数据 var data = {'id':id,'action':action}