当用户重新点击时,Jquery将图像更改回来

时间:2013-06-24 10:07:21

标签: jquery

$(document).ready(function(){
    $("#favour").click(function(){
        $("#favour").css({background:'different image..'});
        $.(post...)//POST BOOLEAN HERE
    });

})

<button id="favour">

我有一个添加青睐按钮,使用jquery post并更改css。

点击时。它将更改为不同的图像并将其发送到DB。

但我需要的是,当我再次点击它时,它会改变图像并发回FALSE。

任何人都知道怎么做?

5 个答案:

答案 0 :(得分:2)

$(document).ready(function(){
    $("#favour").click(function(){
       var obj = $(this);
       if(obj.attr('data-isFavorite') == 'yes')
       {
         obj.attr('data-isFavorite','no');
         $("#favour").css({background:'different image..'});
          $.(post...)//POST FALSE HERE
       }
       else
       {
         obj.attr('data-isFavorite','yes');
         $("#favour").css({background:'different image..'});
         $.(post...)//POST TRUE HERE
       }

});

})


<button id="favour">

答案 1 :(得分:1)

尝试这个

$(document).ready(function(){
    var boolflg = true;
    $("#favour").click(function(){
        var bgimg = boolflg ? 'trueimage' : 'falseimage';
         $("#favour").css({background:bgimg});
        if(boolflg) {
          $.(post...)//POST TRUE HERE
        } else {
          $.(post...)//POST FALSE HERE
        }
        boolflg = !boolflg;
    });
});

答案 2 :(得分:0)

在更改背景图像之前,请将当前图像存储在变量中。当下一次点击发生时,将背景设置为存储的图像。

答案 3 :(得分:0)

取一个变量说例如。 flag = 0;然后在邮件调用后检查标志值并根据值

更改背景

答案 4 :(得分:0)

此代码可以为您提供帮助,

$(document).ready(function(){
    var isPost=true;
    $("#favour").click(function(){
        var image=(isPost==true) ? 'image-1' : 'image-2'; // toggle image
        $("#favour").css({background:image});//you can use class here
        $.(post...)
        isPost=(isPost==true) ? false : true; // toggling isPost variable
    });    
})
相关问题