【问题标题】:search url for matching string in Jquery在 Jquery 中搜索匹配字符串的 url
【发布时间】:2013-11-06 17:22:45
【问题描述】:
我正在尝试使用 jquery 在 url 中搜索匹配的字符串,如果匹配,则将这些类添加到 html 元素中。我有这个代码:
$(function () {
var adminNav = [ "book_values", "lsi_print_costs", "book_specs"];
var url = window.location.href;
if (url.search(adminNav) > 0) {
$('li#nav-admin.dark-nav').addClass('active');
$('#print-admin').addClass('in');
}
});
任何帮助将不胜感激
【问题讨论】:
标签:
javascript
jquery
arrays
variables
search
【解决方案1】:
试试这个。
$(function () {
var adminNav = [ "book_values", "lsi_print_costs", "book_specs"];
var isExist = false;
var url = window.location.href;
for(var i=0; i<adminNav.length; i++ )
{
if (url.search(adminNav[i]) > 0 && !isExist) {
isExist = true;
}
}
if(isExist)
{
$('li#nav-admin.dark-nav').addClass('active');
$('#print-admin').addClass('in');
}
});
【解决方案2】:
使用 Javascript:
if(window.location.search.indexOf("book_values") >=0) {
$('li#nav-admin.dark-nav').addClass('active');
$('#print-admin').addClass('in');
}
【解决方案3】:
使用 .map() 搜索 window.location.href 是否包含数组中的任何值。
var adminNav = ["book_values", "lsi_print_costs", "book_specs"];
var found = false;
adminNav.map(function (val) {
if (window.location.href.contains(val) && !found) {
found = true;
$('li#nav-admin.dark-nav').addClass('active');
$('#print-admin').addClass('in');
}
});