session的问题

我用如下两个代码块,用的button按钮,绑定单击事件,然后到了servlet程序,每次req.getSession都是新的 

<script type="text/javascript">--%>
        <%--$(function () {--%>
            <%--//给加入购物车按钮绑定单机事件--%>
            <%--$("button.addToCart").click(function () {--%>
                <%--/**--%>
                 <%--* 在事件响应的function函数中,有一个this对象,这个this对象,是当前正在相应的dom对象--%>
                 <%--* @type {jQuery}--%>
                 <%--*/--%>
                <%--var bookId = $(this).attr("bookId");--%>
                <%--location.href = "http://localhost:8080//book/cartServlet?action=addItem&id=" + bookId;--%>
            <%--});--%>
        <%--});--%>
    <%--</script>

 

<button bookId="${book.id}" class="addToCart">加入购物车</button>

 

然后把按钮换成了,直接一个a标签跳转,req.getSession就可以获取先前创建好的session了。  不知道这是为啥,看的网课老师就是用的button按钮,我上面的代码都是一样的,就是得不到创建好的session

<a href="cartServlet?action=addItem&id=${book.id}">加入购物车</a>

 

仔细对比下location.href的地址和a标签连接的地址是否一样,如果地址不一样的话,那location.href说明是新的地址了,浏览器就会认定不是同一个网页,因为session就会重新创建。