if和else都在执行Javascript / JQuery

时间:2019-04-21 12:35:23

标签: javascript jquery asp.net

第二个if语句工作得很好,但是第一个if语句始终使用else语句执行,并且永远不会寂寞

整个jquery函数位于另一个称为内部的函数中 “ $(document).ready”命令

仅用于console.log()以找出问题所在,但不幸的是对此一无所知

$("#pager").on("click", "li", function () {

    if ($(this)[0] == $("#pager > li:first-child")[0]) {
        console.log("first")
        selected--;
    }

    if ($(this)[0] == $("#pager > li:last-child")[0]) {
        console.log("last")
        selected++;
    }

    else {
        console.log("numbers")
        selected = $(this).html();
    }
});

1 个答案:

答案 0 :(得分:1)

您的第二个if应该是else if,这就是为什么。

$("#pager").on("click", "li", function () {

    if ($(this)[0] == $("#pager > li:first-child")[0]) {
        console.log("first")
        //selected--;
    }

    else if ($(this)[0] == $("#pager > li:last-child")[0]) {
        console.log("last")
        //selected++;
    }

    else {
        console.log("numbers")
        //selected = $(this).html();
    }
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<ul id=pager><li>test</li></ul>