jquery addClass不起作用

时间:2012-09-18 12:45:49

标签: javascript jquery

jquery

$(document).on('click', '#fun', function (e) {
    var $this = $(this);
    var request = $.ajax({
      url: "example.php",
      type: "POST",
      data: {bla: blabla},
      dataType: "html"
    });

    request.done(function(msg) {
        if(msg)
        {
            $this.addClass("btn btn-info btn-small marked");
            $("#isMarked", $this).val(msg)
        }
        else if(!msg)
        {
            $this.addClass("btn btn-small unmarked");
            $("#isMarked", $this).val(msg);
        }
    });

和按钮

<a id='fun' class='btn btn-info btn-small marked' href='#'>fun</a>

example.php将返回0或1的值(表示true或false) 所以msg将是0或1

如果(!msg)不能正常工作,则在else中使用addClass。我找不到问题。任何想法?

1 个答案:

答案 0 :(得分:1)

msg将是一个字符串,因此您要比较if中的字符串,因为字符串是真值,所以它应该始终为true。

​var str1 = "0";
var str2 = "1";

var x = str1 ? "true" : "false";
var y = str2 ? "true" : "false";

​alert(x+"\n"+y);​​​​