Jquery 是什么导致url中的哈希(#)消失?

Jquery 是什么导致url中的哈希(#)消失?,jquery,html,Jquery,Html,在url类似于mypage.php#tab3的页面上,有如下链接: 单击Add会导致url缩短为mypage.php 地址代码: function addComment(i) { var s = document.getElementById(i); s.innerHTML = ''; $('#'+i).attr('style','width:164px;padding-right:5px'); $('#'+i).append('<input type=

在url类似于
mypage.php#tab3
的页面上,有如下链接:

单击Add会导致url缩短为
mypage.php

地址代码:

function addComment(i) {
    var s = document.getElementById(i);

    s.innerHTML = '';
    $('#'+i).attr('style','width:164px;padding-right:5px');
    $('#'+i).append('<input type="text" id="ci'+i.substr(3)+'" style="width:162px;padding:0 3px" value=\'Enter comment here\' onclick=\"\" onblur="storeComment('+i.substr(3)+');">');
    return false;
}
函数addComment(i){
var s=document.getElementById(i);
s、 innerHTML='';
$('#'+i).attr('style','width:164px;padding right:5px');
$('#'+i).附加('');
返回false;
}
我添加了一些中断,在returnfalse语句之后,散列消失了

尝试了不成功的更改:

  • 有无onclick
  • 带和不带返回假
  • 编辑:问题出在链接代码中

    <a href="#" onclick="addComment('com94');">Add</a>
    

    您基本上需要在onclick处理程序中返回
    false
    ,以防止执行链接的默认操作(转到
    href

    <a href="#" onclick="addComment('com94');return false;">Add</a>
    

    顺便说一句,这不是jQuery的问题,只是基本的HTML。

    你链接的HTML是什么样子的?我不太明白你最后的评论。你的问题解决了吗?:-)您必须向我们显示事件处理程序的代码。您可能需要执行
    preventDefault()
    来停止对链接的默认处理。@ElliotBonneville问题已经解决,并且在href中。正在执行
    href=“#”
    。可以使用
    href=“#tab3”
    (暂时)解决此问题。因此,我现在正在考虑将此作为一个按钮。回答很好。感谢您提供了一节课。
    <a href="#" onclick="return addComment('com94');">Add</a>