为什么location.href不自动跳转?慎用javascript:void(0)

  1. 2008-06-23 @ Tag javascript   人气:1

    <a href="javascript:void(0)" onclick="delete('123')">删除</a>
    <script>
    function delete(id) {
        if(confirm("确实要删除[为什么location.href不自动跳转?]吗?")) {
            location.href="/delete.jsp?id=" + id;
        }
    }
    以上代码不管如何检查都没有任何问题,而location.href="/delete.jsp?id=" + id;在别的地方都好使,为什么这段代码就行呢?
    原因是那个void(0),把代码改成:
    <a href="javascript:delete('123')">删除</a>
    <script>
    function delete(id) {
        if(confirm("确实要删除[为什么location.href不自动跳转?]吗?")) {
            location.href="/delete.jsp?id=" + id;
        }
    }
    我们发现,页面立即就跳转了,能正常删除相应的数据。

    void是一个操作符,会计算一个表达式,但不会返回值,当然也不会改变当前页面的任何内容,也就不会正常的跳转。

感谢易载提供各种支持!
文章分类