Question

I want to remove anchors with href contains "#tab" without a specific css class "atitleTabs" from some specific divs whose Id contains "tab". I have tried the following code it didn't work for me.

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

    });

});

How can i do it, please help me, how can i achieve my goal.

Was it helpful?

Solution

Try to use attribute contains selector to achieve what you want,

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

or just try the samething with .filter()

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

OTHER TIPS

You can use attribute contains selector:

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

Try

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

You can use attribute selector * for this purpose.

If you want to use startwith clause you can use ^.

If you want to use endswith clause, use $

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top