Jquery 如果元素';s子项包含某些文本(在数组中找到)

Jquery 如果元素';s子项包含某些文本(在数组中找到),jquery,arrays,navigation,Jquery,Arrays,Navigation,导航系统如下所示。我想做的是将菜单项添加到数组中,并对这些菜单项执行某些操作 我还不知道怎么做,所以我需要你的帮助,谢谢 html: 试试这个: var performActionsTo = ['Apples', 'Oranges']; $('.menu-item').each(function() { if ( performActionsTo.indexOf($(this).find('a').text()) > -1) { console.log('actio

导航系统如下所示。我想做的是将菜单项添加到数组中,并对这些菜单项执行某些操作

我还不知道怎么做,所以我需要你的帮助,谢谢

html:

试试这个:

var performActionsTo = ['Apples', 'Oranges'];
$('.menu-item').each(function() {
    if ( performActionsTo.indexOf($(this).find('a').text()) > -1) {
        console.log('action');
    };
});

使用jQuery的
包含的
选择器可以使它变得简单得多:

$.each(performActionsTo, function(i, val) {
  var element = $(".menu-item a:contains('" + val + "')");
  // Perform action on element
});
注意事项:


如果您决定使用
Apples
,然后选择
Big Apples
,这个答案(与其他答案一样)可能需要额外注意,因为第一个将匹配两个元素,因为两个锚都将“包含”这个词。

您搜索过吗???@A.Wolff:是,我已经找过了,但还没有找到解决办法。@KarlSagar你试过我的答案吗?@JohnR:是的,我试过了。不幸的是,由于某种原因,它在数组中只找到了一个元素。无论如何谢谢你@卡尔萨格,好的。我已经删除了我的答案。@KarlSagar-没问题,出于好奇-什么是“行动”?@JᴀʏMᴇᴇ: 操作是将所有这些链接的scr(href)更改为特定页面。
var performActionsTo = ['Apples', 'Oranges'];
$('.menu-item').each(function() {
    if ( performActionsTo.indexOf($(this).find('a').text()) > -1) {
        console.log('action');
    };
});
$.each(performActionsTo, function(i, val) {
  var element = $(".menu-item a:contains('" + val + "')");
  // Perform action on element
});