【问题标题】:How to find anchor without a specifc class using jquery?如何使用 jquery 查找没有特定类的锚点?
【发布时间】:2014-04-09 06:55:15
【问题描述】:

我想从 ID 包含“tab”的某些特定 div 中删除带有 href 的锚点包含“#tab”没有特定的 css 类“atitleTabs”。我已经尝试了以下代码,但它对我不起作用。

$(window).load(function () {

    $('div ul li a').filter(function () {
        if (!$('div ul li a').hasClass('atitleTabs')) {
            alert('Got Anchor without the particlauar class');
            alert($('div ul li a').attr('href'));
        } else {
            alert('Got Anchor with class');
        }

    });

});

我该怎么做,请帮助我,我怎样才能实现我的目标。

【问题讨论】:

  • 问题标题和内容不同步。确切的问题是什么?编辑:你应该看看api.jquery.com/not
  • @Satpal 抱歉,我错过了一些信息,请阅读更新后的问题'
  • 你可以使用$('div ul li a').not('.atitleTabs')
  • 我已经这样做了

标签: javascript jquery html filter anchor


【解决方案1】:

尝试使用attribute contains selector实现你想要的,

$('div[id*="tab"] a[href*="#tab"]:not(".atitleTabs")').remove();

或者用.filter()试试同样的方法

$('div[id*="tab"] a[href*="#tab"])').filter(':not(".atitleTabs")').remove();

【讨论】:

    【解决方案2】:

    您可以使用attribute contains selector

    $('[id*="tab"]').find('[href*="#tab"]').remove();
    

    【讨论】:

    • 我们正在使用 attr - 包含选择器,可能是元素而不是 div 可能包含包含 tab.. 对..?
    【解决方案3】:

    试试

    $("[id*=tab]").find("[href*='#tab']").remove();
    

    您可以为此目的使用属性选择器*

    如果你想使用startwith 子句,你可以使用^

    如果要使用endswith 子句,请使用$

    【讨论】:

      猜你喜欢
      • 2014-05-22
      • 2014-01-14
      • 2011-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-16
      相关资源
      最近更新 更多