在onClick事件发生之前评估所有if语句的Javascript函数

时间:2017-03-30 05:11:27

标签: javascript html jsp

在讨论问题之前,请先查看以下代码段:

Homepage1.jsp包含按钮和脚本:

        <div>
        <button id="admin" style="float: left;" onclick="getUserID(this.id)"><b>Admin</b></button>
        <button id = "chef" style="float: left;" onclick="getUserID(this.id)"><b>Chef</b></button>
        <button id = "user" style="float: left;" onclick="getUserID(this.id)"><b>User</b></button>

<script type="text/javascript">

function getUserID(clicked_id) {

    if (clicked_id == "admin") {
        <%session.setAttribute("userID", "admin");%>
    }
    else if (clicked_id == "chef") {
        <%session.setAttribute("userID", "chef");%>
    }
    else if (clicked_id == "user") {
        <%session.setAttribute("userID", "user");%>
    }

    window.location = "/Homepage2.jsp";
}

Homepage2.jsp包含:

<%Object userName = session.getAttribute("userID");%>

我的问题是,无论我点击(管理员,厨师或用户)的三个按钮中的哪一个,下一个jsp文件(Homepage2.jsp)总是获取与“用户”相关的信息。

调试此代码后我注意到,每个if语句都在函数getUserID(clicked_id)中进行计算,以便最后一个if语句覆盖以前的语句。

0 个答案:

没有答案