javascript - 更改没有 id 的 <li> 链接

标签 javascript jquery html

我有一个没有 id 的下拉菜单 - 我正在尝试更改嵌套在 li 中的 a 的 href 值通过 JavaScriptjQuery。这是标记:

<ul class="dropdown-menu" aria-labelledby="user_info_dropdown" role="menu">  
   <li>
      <a href="myLink.com?id=12431312sdfs2143123"></a> 
   </li> 
</ul>

我想将 anchor 标记中的链接更改为 myLink.com?id=12431312sdfs2143123&anotherValue

实现这一目标的最佳方法是什么?

最佳答案

您可以通过多种方式定位此元素。

使用父级

由于您的元素是列表中的唯一元素,因此您可以使用其目标中的元素来解析它:

// This should find it and replace it
$('.dropdown-menu ul li:first a').attr('href','...');

使用属性

如果您确切知道需要替换的特定值是什么(即 href 属性),您可以使用 jQuery 的属性选择器来查找具有适当内容的元素并更新它们:

// Find a link with a specific URL and update it
$('a[href="myLink.com?id=12431312sdfs2143123"]').attr('href','...');

更广泛的笔触

如果您不知道确切的 href值您的目标,您可以应用更通用的方法。即替换任意 <a>以“myLink.com?”开头的标签并附加您的查询字符串值:

$('a[href^="myLink.com?"]').each(function(){
     $(this).attr('href',$(this).attr('href') + '&anotherValue';
});

关于javascript - 更改没有 id 的 <li> 链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37549755/

相关文章:

javascript - 除了明显的布局/CSS 问题之外的浏览器兼容性问题?

javascript - 在Javascript中,如何继承和扩展正在继承的方法?

html - Bootstrap - 手机上的多输入组插件

javascript - 有没有办法在 jQuery 中传递上下文进行绑定(bind)?

javascript - 如何在 Deno 中将大量数据传递给 process.stdin.write?

javascript - 确保两个处理程序按特定顺序完成

javascript - 单击时onclick事件不添加类

javascript - 如何在页面加载中将启用属性设置为 highcharts 行

html - 为什么输入的字体大小会破坏行内 block 对齐?

javascript - JSF inputHidden ,如何动态禁用它们?