在香草JS中为以特定ID开头的所有<a>对象重写href

提姆

我正在尝试使用香草JS(无jQuery等)将参数附加到菜单中多个项目的URL上。

我要使用的所有菜单项都有一个共同点,我认为这是选择正确对象的关键:它们都相同的ID开头

所以我看起来像这样:

<a href="someplace.php" id="actionMenu123">Link 1</a>
<a href="someplace2.php" id="actionMenu456">Link 2</a>
<a href="someplace3.php" id="actionMenu789">Link 3</a>
<a href="someplace4.php" id="actionMenuABV">Link 4</a>
<a href="someplace5.php" id="actionMenu5X4">Link 5</a>

我需要的JS脚本应产生以下结果:

<a href="someplace.php?John=Doe" id="actionMenu123">Link 1</a>
<a href="someplace2.php?John=Doe" id="actionMenu456">Link 2</a>
<a href="someplace3.php?John=Doe" id="actionMenu789">Link 3</a>
<a href="someplace4.php?John=Doe" id="actionMenuABV">Link 4</a>
<a href="someplace5.php?John=Doe" id="actionMenu5X4">Link 5</a>

我试图<a>通过使用querySelectorAll选择所有DOM中包含“ actionMenu”的对象来重写href,但是我认为我做的不正确。

我将不胜感激任何指针。

杰瑞德·史密斯(Jared Smith)
// first, get list of all 'a' tags and convert to array
[].slice.call(document.querySelectorAll('a'))

  // filter for ones whose id matches. We also want to make
  // sure it *has* an id and an href
  .filter(node => node.id && node.href && node.id.match(/^actionmenu/i))

  // rewrite the href
  .forEach(node => node.href = node.href + '?John=Doe');

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在Java中为特定对象(而不是该类型的所有实例)设置(方法)断点

使用新的属性名称将JsonNode对象重写为新对象,并绕过某些节点

Java-重写在构造函数中创建的对象?

根据对象类重写Java中的打印语句

如何选择在香草js的ID中具有特定文本的选择类型对象?

为什么MongoDB中的所有对象ID都以数字5开头?

AngularJS:ui-router href重写为ui-sref

如何在ngFor中重写对象的键名称

更新时如何在模型中重写嵌套对象

如何将'__extends = function(){}'重写为对象

在Discord.py中-重写AttributeError:'Bot'对象没有属性'voice_client_in'

如何在Discord.py重写中定义对象

Angelscript从数组中的对象调用重写函数

如何获取JS对象中特定嵌套属性的所有值

将程序从结构化重写为面向对象

JS对象属性被意外重写

为JSON中的所有对象获取特定的键值

获取其字符串属性以特定字母开头的NSArray中的所有对象

ActiveModel序列化程序中的重写关联-返回所有属性,而不是序列化的对象属性

为什么重写功能没有发送者对象?

如何将JS Progressbar.js对象重写为React组件

CompoundPropertyModel中对象的重写getter方法

将 "href=javascript:" 重写为 javascript

列表中的 C# 对象总是被重写

我如何在 Ramda 中重写对象道具的类型检查

想要从 a 标签中抓取所有特定的 href

在基类重写的 ToString 方法中访问子类对象

Js-如何检查对象数组中的所有键是否为 === false?

查找所有以 ' ' 开头的 href