如果不工作js

时间:2015-02-07 05:56:33

标签: javascript jquery

这是我的代码我只想在点击时更改x值,如果它是x然后改变y ..如果它是y然后再次更改为x但是在变为y值之后不能更改为x ..控件始终打开第3节......什么是错的

jQuery(document).ready(function(){
           var x;
          $(".ticktack tr td").click(function(){
          if(x == null){

          alert('section 1' );
            x = 'X';
           }
          else if(x == 'X'){
          alert('section 2');
             x = 'Y';
           }
          else if(x == 'Y'){
          alert('section 3');
                x == 'X';
           }
            $(this).html(x);
          })

        }); 

7 个答案:

答案 0 :(得分:1)

其实你有两个错误,一个;缺失和x == X应该x = X

$(document).ready(function(){
           var x;
          $(".ticktack tr td").click(function(){
              if(x == null){
                    alert('section 1' );
                    x = 'X';
               } else if(x == 'X'){
                    alert('section 2');
                    x = 'Y';
               } else if(x == 'Y'){
                    alert('section 3');
                    x = 'X';
               }
            $(this).html(x);
          });

        }); 

答案 1 :(得分:0)

alert('section 3');
x == 'X';

应该是

alert('section 3');
x = 'X';

JSFiddle

答案 2 :(得分:0)

在最后一个if语句中你有一个额外的'='!

x ='X';应该工作:)

答案 3 :(得分:0)

你在alert('Section 3')之后使用比较运算符。相反,你必须使用赋值运算符!试试这个:

jQuery(document).ready(function(){
  var x;
  $(".ticktack tr td").click(function(){
  if(x == null){
    alert('section 1' );
    x = 'X';
  } else if(x == 'X') {
    alert('section 2');
    x = 'Y';
  } else if(x == 'Y') {
    alert('section 3');
    x = 'X';
  }
  $(this).html(x);
  });
}); 

答案 4 :(得分:0)

您在第三部分中又添加了一个=。 尝试:

jQuery(document).ready(function(){
               var x;
              $(".ticktack tr td").click(function(){
              if(x == null){

              alert('section 1' );
                x = 'X';
               }
              else if(x == 'X'){
              alert('section 2');
                 x = 'Y';
               }
              else if(x == 'Y'){
              alert('section 3');
                    x = 'X';
               }
                $(this).html(x);
              });

            });

答案 5 :(得分:0)

x == 'X';更改为x = 'X',因为您必须指定值x =='X'不执行任何操作。如果你把比较或者像x =='X'?If true then do this:else this;这样的三元运算符放入,那么它会给你真或假的结果

答案 6 :(得分:0)

    Used assignment operator instead of comparison operator in Third section
    try this code.

    jQuery(document).ready(function(){
       var x;
      $(".ticktack tr td").click(function(){
      if(x == null){

      alert('section 1' );
        x = 'X';
       }
      else if(x == 'X'){
      alert('section 2');
         x = 'Y';
       }
      else if(x == 'Y'){
      alert('section 3');
            x = 'X';
       }
        $(this).html(x);
      })

    });