JQuery Ajax在url中添加哈希

时间:2012-12-21 07:49:28

标签: javascript jquery ajax url struts2

我这里的代码使用了struts2-jquery插件

<h4>Choose A task</h4>
    <ul>
        <s:url value="views/ajaxvalidation.jsp" var="ajaxvalidation" >
            <s:param name="menuId" value="1"/>
        </s:url>
        <li><sj:a targets="resultContent" href="%{ajaxvalidation}">Ajax Validation</sj:a></li>
    </ul>

当我点击其内容时,网址会更改为这样的内容,网址中没有任何内容发生变化。它仍然保持不变,我想要的是当我点击链接时会发生类似www.myapp.com/#ajaxvalidation的事情。当我运行代码时,锚标记被翻译成类似这样的东西

<a id="anchor_1365013162" href="javascript:void(0)">Ajax Validation</a>

有了这个,我将如何在网址中添加哈希?

1 个答案:

答案 0 :(得分:29)

这是一个工作示例(不考虑Struts2):

<html>
<body>
<a id="123" href="">Add Hash</a>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<script>
$(document).ready(function() {
    $("a").click(function(e) {
        window.location.hash = $(this).attr("id");
        e.preventDefault();
    });
});
</script>
</body>
</html>