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

})

<button id="favour">

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

当它点击时。它将更改为不同的图像并将 TRUE 发布到 DB。

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

有人知道该怎么做吗?

4

5 回答 5

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">
于 2013-06-24T10:14:01.013 回答
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;
    });
});
于 2013-06-24T10:15:40.273 回答
0

以一个变量为例。标志 = 0; 然后在调用后检查标志的值并根据值更改背景

于 2013-06-24T10:10:47.117 回答
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
    });    
})
于 2013-06-24T10:13:04.180 回答
0

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

于 2013-06-24T10:10:09.353 回答