我正在尝试使用jQuery搜索链接列表,并从符合条件的链接中获取文本。这是一个示例结构:
<div class="shortcut_box">
<p>Select a category</p>
<ul id="select_nav">
<li><a href="doing-business/directory/#acupuncture">Acupuncture</a></li>
<li><a href="doing-business/directory/#advertising">Advertising</a></li>
<li><a href="doing-business/directory/#apparel">Clothing and Apparel</a></li>
<li><a href="doing-business/directory/#automotive">Automotive</a></li>
</ul>
</div>
<h3 id="index_heading"></h3>
有一个脚本可以将变量设置为哈希标记之后的字符串(例如“服装”)。我想取这个变量,在列表中搜索以“服装”结尾的链接,并将H3标签设置为“服装和服饰”。
该变量是在鼠标点击时设置的,但也可以在页面加载时检查URL,因此我无法使用基于鼠标单击的功能。
以下是我一直在玩的一些代码,但是无效:
// manually set url variable for testing
url = 'apparel';
$('#index_heading').html($("#select_nav a[value.match(/url$/)]").text());
非常感谢任何帮助。
答案 0 :(得分:0)
您可能希望尝试使用不区分大小写的/url$/i
答案 1 :(得分:0)
试试这个:
// manually set url variable for testing
url = 'apparel';
var wantedId = "";
$('a').each(function() {
if($(this).attr("href").split("#")[1] == url) {
wantedId=$(this).id;
}
});
$('#index_heading').html($("#" + wantedId).text());
答案 2 :(得分:0)
使用jQuery's Attribute contains选择器,您的代码应该有效:
url = 'apparel';
$('#index_heading').html($("#select_nav a[href*='"+url+"']").text());