简体   繁体   English

在jQuery中搜索匹配字符串的URL

[英]search url for matching string in Jquery

I'm trying to search url for a matching string with jquery and if it matches add these classes to an html element. 我正在尝试使用jquery在url中搜索匹配的字符串,如果匹配,则将这些类添加到html元素中。 I have this code: 我有以下代码:

$(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');
 }
});

Any help would be greatly apperciated 任何帮助将不胜感激

Use Javascript: 使用Javascript:

if(window.location.search.indexOf("book_values") >=0) {
    $('li#nav-admin.dark-nav').addClass('active');
    $('#print-admin').addClass('in');
}

Use .map() to search if the window.location.href contains any value in the array. 使用.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');
    }
});

Try this. 尝试这个。

$(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');
}
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM