操纵响应来自不在条件语句中工作

时间:2013-03-22 19:51:47

标签: jquery if-statement get

我有以下代码,但问题是当我尝试使用从php(getstate)检索的值设置条件语句时,它会通过if语句,即使它不匹配。例如,如果响应为1,则getstate为1,但是当getstate为2时,它将执行代码。有什么问题?

 var getstate =""; 
    $.get('getstate.php', {
                    email: emailaddress,
                    country: 'DE',
                    lang: lang,
                    source: '1304_Spring_dly'
                }, function (data) {

            getstate = data;

    if ( getstate = "2" ){

        $('#mch-overlay').fadeIn(300);

                } else if ( getstate = "1" ){
                    $('#mch-overlay').fadeIn(300);
                    });

              } else {
                    $('p.error').hide();
                      }

            }); /*end .GET */

1 个答案:

答案 0 :(得分:1)

条件需要=====,仅使用=设置值,并且通常修剪值以确保没有空格是个好主意:

$.get('getstate.php', {
           email  : emailaddress,
           country: 'DE',
           lang   : lang,
           source : '1304_Spring_dly'
    }, function (data) {
           var getstate = $.trim( data );
           if ( getstate == "2" ){
               $('#mch-overlay').fadeIn(300);
           } else if ( getstate == "1" ){
               $('#mch-overlay').fadeIn(300);
           } else {
               $('p.error').hide();
           }
});

还要注意你在条件中做了同样的事情,所以它可能已经缩短为if / else。