0

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になります

else if(!msg)のaddClassは機能しません。問題が見つかりません。何か案が?

4

1 に答える 1

1

msg文字列は文字列になるため、ifで文字列を比較しているので、文字列は真の値であるため、常にtrueである必要があります。

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

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

​alert(x+"\n"+y);​​​​
于 2012-09-18T12:59:02.467 に答える