每次刷新页面时运行的 JSP 函数



我想仅在用户第一次单击"添加到购物篮"时将商品添加到购物篮中,但是每次刷新页面时,它都会再次添加它。

这是我将商品添加到购物篮的代码

    <%
    String empty = request.getParameter("emptyBasket");
    if (empty!=null) {
        basket.clearBasket();
    }
    String item = request.getParameter("addItem"); %>
<script>
    window.onload = function(){
        if(localStorage.getItem("notFirstTime") == null) {
            <% basket.addItem(item); %>
            localStorage.setItem("notFirstTime", true);
        }
    }
</script>
<html>
<body> ....

如您所见,我尝试使用window.onload方法,但由于某种原因它不起作用。如果您需要查看更多代码,请告诉我,我会更新。

谢谢

JSP 在服务器上运行。JavaScript 在浏览器上运行。服务器端代码首先在服务器上运行以生成页面。然后它通过网络将其发送到运行JavaScript的浏览器。 basket.addItem(item)将始终作为页面生成过程的一部分运行,因为它是服务器端代码。

您可能需要考虑使用 Cookie(针对匿名用户(或数据库(适用于经过身份验证的用户(来存储这些值。

最新更新