Javascript 无法申请<;的数组;a>;链接
在我的第三部分应用程序中有以下标记Javascript 无法申请<;的数组;a>;链接,javascript,jquery,Javascript,Jquery,在我的第三部分应用程序中有以下标记 <a href="/Lists/NewsAnnouncements/AllItems.aspx?RootFolder=%2FLists%2FNewsAnnouncements;FolderCTID=0x01200200881E90B7B49B8345B5DEB72152BE6494& View=%7BFF37C57C%2D57F1%2D4B05%2DBF9C%2D00A88004E54A%7D"> <span class="m
<a href="/Lists/NewsAnnouncements/AllItems.aspx?RootFolder=%2FLists%2FNewsAnnouncements;FolderCTID=0x01200200881E90B7B49B8345B5DEB72152BE6494&
View=%7BFF37C57C%2D57F1%2D4B05%2DBF9C%2D00A88004E54A%7D">
<span class="ms-textLarge ms-noWrap">item A</span></a>
<a href="/Lists/NewsAnnouncements/AllItems.aspx?RootFolder=%2FLists%2FNewsAnnouncements;FolderCTID=0x01200200881E90B7B49B8345B5DEB72152BE6494&
View=%7BFF37C57C%2D57F1%2D4B05%2DBF9C%2D00A88004E54A%7D">
<span class="ms-textLarge ms-noWrap">testing</span></a>
但是没有添加任何链接,alo控制台也没有提出任何问题。所以我不确定我的代码有什么问题?值在
href
属性中,而不是在文本中,因此使用属性包含*
选择器
var els = $('a[href*="NewsAnnouncements"]');
for(var i = 0, l = els.length; i < l; i++) {
$(els[i]).attr('target', '_blank');
}
演示
$('a[href*=“NewsAnnouncements”]”)。每个(函数(){
$(this.attr('target','u blank');
});代码>
值在href
属性中,不在文本中,因此使用属性包含*
选择器
var els = $('a[href*="NewsAnnouncements"]');
for(var i = 0, l = els.length; i < l; i++) {
$(els[i]).attr('target', '_blank');
}
演示
$('a[href*=“NewsAnnouncements”]”)。每个(函数(){
$(this.attr('target','u blank');
});代码>
您可以在每个els
元素上使用each()
,并相应地添加属性target=''u blank'
:
var els = $('a[href*="NewsAnnouncements"]');
els.each(function(){
$(this).attr('target', '_blank');
});
下面是工作片段。要检查代码的正确性,请在链接上使用浏览器的inspect元素
,并检查属性是否已添加
$(文档).ready(函数(){
var els=$('a[href*=“NewsAnnouncements”]);
els.each(函数(){
$(this.attr('target','u blank');
});
});代码>
您可以在每个els
元素上使用each()
,并相应地添加属性target=''u blank'
:
var els = $('a[href*="NewsAnnouncements"]');
els.each(function(){
$(this).attr('target', '_blank');
});
下面是工作片段。要检查代码的正确性,请在链接上使用浏览器的inspect元素
,并检查属性是否已添加
$(文档).ready(函数(){
var els=$('a[href*=“NewsAnnouncements”]);
els.each(函数(){
$(this.attr('target','u blank');
});
});代码>
无需迭代元素$('a[href*=“NewsAnnouncements”])代码>
jQuery获取匹配元素集中第一个元素的属性值,或为每个匹配元素设置一个或多个属性。
然后,您可以简单地执行以下操作:
$('a[href*="NewsAnnouncements"]').attr('target', '_blank');
无需迭代元素$('a[href*=“NewsAnnouncements”])代码>
jQuery获取匹配元素集中第一个元素的属性值,或为每个匹配元素设置一个或多个属性。
然后,您可以简单地执行以下操作:
$('a[href*="NewsAnnouncements"]').attr('target', '_blank');
我看不到你在任何时候声明el
。不过你有els
。另外,如果您没有使用i
执行任何操作,那么for
循环的意义何在?我看不到您在任何时候声明el
。不过你有els
。另外,如果您没有使用i
执行任何操作,那么for
循环有什么意义呢?谢谢您的回复。。现在我添加了alert(els.length)代码>似乎是1,所以选择器只选择了一个链接,而我在分享的演示中有大约20..@johnG,它可以将属性设置为所有链接。请选中无需迭代所有元素$('a[href*=“NewsAnnouncements”])代码>@Yosvellquintero你是对的,但你已经回答了。所以,我不想在我的回答中添加同样的内容。谢谢你的回复。。现在我添加了alert(els.length)代码>似乎是1,所以选择器只选择了一个链接,而我在分享的演示中有大约20..@johnG,它可以将属性设置为所有链接。请选中无需迭代所有元素$('a[href*=“NewsAnnouncements”])代码>@Yosvellquintero你是对的,但你已经回答了。因此,我不想在我的答案中添加相同的内容代码>似乎是1,所以选择器只选择了一个链接,而我有大约20个。无需迭代所有元素$('a[href*=“NewsAnnounces”])代码>现在我添加了警报(els.length)代码>似乎是1,所以选择器只选择了一个链接,而我有大约20个。无需迭代所有元素$('a[href*=“NewsAnnounces”])代码>