【问题标题】:Remove path from url and add another从 url 中删除路径并添加另一个
【发布时间】:2012-03-09 23:30:52
【问题描述】:

我有一个包含链接(动态)的 div,并且希望在用户单击链接时从 href attrybute 中删除路径并添加另一个。

例如:我要转换这个:

<div id="example"> 
<a href="/some path/page_id=8">Link1</a>
<a href="/some path/page_id=8">Link2</a>
<a href="/some path/page_id=8">Link3</a>
......

</div>

到:

<div id="example"> 
<a href="/some path/ANOTHER_PATH">Link1</a>
<a href="/some path/ANOTHER_PATH">Link2</a>
<a href="/some path/ANOTHER_PATH">Link3</a>
......

</div>

我是 php 和 javascript 的菜鸟,所以任何帮助将不胜感激。

谢谢

【问题讨论】:

  • 使用 jquery:$('#link').click(function(){change your path}); 或者你可以使用 javascript window.location.Replace(something_str, with_something_else_str);在php中可以调用header(Location:'new-path');
  • 好的,但是如何动态地做到这一点...我的意思是所有来自
    的链接都会在点击时更改 p.s.对不起我的英语

标签: php javascript url path onclick


【解决方案1】:

这应该对你有用(假设你有 jQuery)

$("#example a").click(function(){
    var href = $(this).attr('href');
    $(this).attr('href', href.replace('/some path', '/some path/ANOTHER_PATH'));
});

See it working here on jsFiddle


编辑

如果您需要原生 JavaScript 版本,请使用这里

var e = document.getElementById('example');
var links = e.getElementsByTagName('a');

for(x in links){
    links[x].onclick = function(){
        this.href = this.href.replace('/some%20path', '/some%20path/ANOTHER_PATH');
    };
}

See it working here on jsFiddle

【讨论】:

  • 很好的答案 - 只需向 OP 说明它需要 jQuery javascript 库。
  • @nickb,我也添加了原生 JavaScript 版本 :)
【解决方案2】:

纯 JS:

document.getElementById('example').childNodes[1].href = 'www.najdi.si';
document.getElementById('example').childNodes[2].href = 'www.google.com'; 

【讨论】:

    猜你喜欢
    • 2019-06-11
    • 1970-01-01
    • 1970-01-01
    • 2012-08-05
    • 2017-05-20
    • 1970-01-01
    • 2020-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多