我一直在努力寻找适合我需要的这个问题的答案,但要么我太菜鸟无法让其他用例工作,要么它们对我的情况不够具体。
基本上,我想使用 javascript/jQuery 将网页上可能出现在链接 href 中的任何和所有符号 (&) 替换为单词“and”。我已经尝试了几个不同的版本,但没有成功
var link = $("a").attr('href');
link.replace(/&/g, "and");
谢谢
最佳答案
您当前的代码会替换 jQuery 对象中元素的文本,但不会更新 DOM 中的元素。
您可以通过向 attr()
提供一个函数来实现您的需要,该函数将针对匹配集中的所有元素执行。试试这个:
$("a").attr('href', function(i, value) {
return value.replace(/&/g, "and");
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<a href="/this-&-that">link</a>
<a href="/foo-&-bar">link</a>
关于Javascript 正则表达式替换页面上所有链接 href 中的符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35014383/