JavaScript如何将ID添加到HTML href中

5
我有一个实时搜索脚本,需要用信息填充我的HTML菜单。我有一个菜单,看起来像这样:
<a href="?page=page&id=">Menu item</a>

我需要的是一段代码,可以对链接进行以下操作:
<a href="?page=page&id=1">Menu item</a>

我有一个JavaScript从数据库表(livesearch)中提取ID值,现在我只需要它能够即时进入href。有什么建议吗?

1
这看起来非常可疑 - 你不应该依赖JS来进行应用程序开发,而且似乎有更好的服务器端解决方案。 - annakata
我不想重新加载页面,所以我想用这种方式来实现。有没有任何建议可以做到同样的效果,但不需要重新加载页面? - Filip Palm
2个回答

5
<a href="?page=page&id=" id="link1">Menu item</a>

<script type='text/javascript'>
var myidtoinsert = 5;
document.getElementById("link1").href += myidtoinsert;
</script>

为您的a标签添加id,然后只需使用document.getElementById获取href属性。


完美的ChristopheD,正是我在寻找的。非常感谢! - Filip Palm
2
这个的缺点是我需要为每个href设置一个id="link+"。 - Filip Palm
1
您需要为元素指定唯一标识符,以便能够在Javascript中DOM方式操作它。目前我所能想到的JavaScript替代方案是,在页面上“获取所有a标签”,然后遍历它们自动添加href标签。您无法在服务器端生成a标签id的原因是什么? - ChristopheD

2
function addPageIds(){

    var links = document.getElementsByTagName("a");
    for (var i = 0; i < links.length; i++){
        if (/id=$/.test(links[i].href)) links[i].href += "1";
    }

}

MiffTheFox,这个很好用。link[i].href(links[i].href)有一个错别字。 非常感谢! - Filip Palm

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接