检查地址栏中的字符串是否与li id匹配

时间:2012-06-15 19:59:03

标签: javascript jquery

我需要检查我的地址是否包含与我的姓名匹配的单词:

<ul>
   <li id="filter-myId" class="noSelected">Text</li>
</ul>

要检查的网址示例:

http://www_link.com/D=.myId

但是在窗口地址栏上它只显示没有“filter-”的“myId”,所以我想我需要检查“filter-”之后是否匹配windows地址上出现的字符串。如果是这样,李会得到一个“选定”的课程

帮助?

2 个答案:

答案 0 :(得分:1)

我建议,尽管目前尚未经过测试,但仍有以下几点:

var string = document.location.href.split('=')[1];

if ($('li[id*="' + string + '"]').length){
    $('li[id*="' + string + '"]').addClass('selected');
}

要将搜索范围限制为具有li前缀的filter-元素:

var string = document.location.href.split('=')[1];

if ($('li[id^="filter-"][id*="' + string + '"]').length){
    $('li[id^="filter-"][id*="' + string + '"]').addClass('selected');
}

参考文献:

答案 1 :(得分:1)

您需要以某种方式解析URL。我要离开那个部分,但假设它放在一个名为url的对象中。

<强>的Javascript

if (elem = document.getElementById('filter-' + url['D'])) {
  // exists
  elem.className += ' selected';
}

<强>的jQuery

elem = $('#filter-' + url['D']);
if (elem.length) {
  // exists
  elem.addClass('selected');
}