jQuery和IE7玩得不好

jQuery和IE7玩得不好,jquery,ajax,internet-explorer-7,Jquery,Ajax,Internet Explorer 7,我看不出他的代码块有什么问题,但出于某种原因,IE7让我很为难 $('.vote').live('click', function() { var post_url = base_url + 'ajax_vote' ; var mask_id = $(this).attr('id'); var btn = $(this); $.ajax({ type: "POST", url:

我看不出他的代码块有什么问题,但出于某种原因,IE7让我很为难

$('.vote').live('click', function() {

        var post_url = base_url + 'ajax_vote' ;
        var mask_id = $(this).attr('id');
        var btn = $(this);

        $.ajax({
            type:   "POST",
            url:    post_url,
            data:   "mask_id=" + mask_id,
            }).done(function( msg ) {
                if( msg == 'pass' ){
                    get_votes(mask_id);
                    btn.replaceWith('<span class="success">Thanks for voting</span>');
                }
                else{
                    btn.replaceWith('<span class="error">You have already voted for this.</span>');
                }
            });

        return false;
    });  
$('.vote').live('click',function()){
var post_url=base_url+'ajax_vote';
var mask_id=$(this.attr('id');
var btn=$(本);
$.ajax({
类型:“POST”,
url:post_url,
数据:“掩码id=”+掩码id,
}).done(函数(msg){
如果(消息=='pass'){
获得投票(屏蔽id);
btn.替换为(“感谢投票”);
}
否则{
btn.replaceWith('您已经对此投了票');
}
});
返回false;
});  
有人能看到我做了什么让它抱怨吗。运行jQuery 1.6.2时,它位于一个活动的lightbox中,因此如果可能的话,初学者可以避免使用.live

现在谈谈你的问题:

// this doesn't do what you think.
.done(function( msg ) {

您应该使用
.ajax()

的定义“给我一段艰难的时光”抱歉,这只是扼杀了脚本的其余部分,因此其他内容都无法工作。您在控制台中是否遇到任何错误?您是否检查了页面中的JS错误?到底是什么问题???感谢您提供的有用反馈。将其更改为ajax成功版,工作起来就像做梦一样。