如果不在jquery中工作

时间:2016-11-30 13:09:52

标签: javascript jquery

我正面临一个小问题,下面是jquery代码。代码的第一段if工作正常,但else部分无效。

function show_table() {
        var table_name = '<?php echo $table_name; ?>';
        if(table_name = "users" ) {
            $("#users").css('display', 'block');
        }else if(table_name = "questions") {
            $("#questions").css('display', 'block');

        }
    }


  $(document).ready(function() {
        $("#block").click(function() {
            show_table();
            return false;
        });
    });

<a id="block" class="btn btn-info fa fa-cog" href=""></a>

<div style="display: none;" id="questions">
   <p>Questions</p>
</div>

<div style="display: none;" id="users">
   <p>users</p>
</div>

任何人都可以帮我解决这个问题。

3 个答案:

答案 0 :(得分:4)

===条件中使用if NOT else if=始终使用trueif除非分配到0NaNundefined或其他falsy值,否则将始终执行条件。

答案 1 :(得分:4)

此错误必须是因为您要为变量table_name分配字符串&#34; users&#34;而不是在if条件下检查天气等于它。即,if条件语句if(table_name = "users" )上有一个小的拼写错误 在你的代码的第三行。

将其更改为if(table_name == "users" ),并且代码必须正常工作。

不仅在第三行如果条件,它在if条件下定期重复。在所有if条件中将=替换为==

希望这会有所帮助并且代码可以工作.. :)

答案 2 :(得分:3)

使用==代替=。前者是比较,而后者是作业。

    if (table_name == "users" ) {
        $("#users").css('display', 'block');
    } else if(table_name == "questions") {
        $("#questions").css('display', 'block');
    }

the documentation中阅读更多内容。