708

Is it possible using jQuery to select all <a> links which href ends with "ABC"?

For example, if I want to find this link <a href="http://server/page.aspx?id=ABC">

0

5 Answers 5

1644
   $('a[href$="ABC"]')...

Selector documentation can be found at http://docs.jquery.com/Selectors

For attributes:

= is exactly equal
!= is not equal
^= is starts with
$= is ends with
*= is contains
~= is contains word
|= is starts with prefix (i.e., |= "prefix" matches "prefix-...")
Sign up to request clarification or add additional context in comments.

8 Comments

something changed recently. $('[href$=-abc]') used to work. Now it requires quotes $('[href$="-abc"]') I don't know when it changed. Maybe it was always supposed to require quotes and just happened to work before.
Note that "ABC" is case-sensitive! (Just spent quite some time to figure that one out...)
How to get href does not contains ABC in jquery
@sf.dev $('a').filter(function() { return !this.href || !this.href.match(/ABC/); });
This works with vanilla javascirpt now. You can simply use document.querySelectorAll('a[href$="ABC"]') to achieve this.
|
24
$('a[href$="ABC"]:first').attr('title');

This will return the title of the first link that has a URL which ends with "ABC".

2 Comments

Correction: Which ends with ABC
Actually, there is a slight difference. This will select the first link with given href, which is useful if you need to change only one.
16
$("a[href*='id=ABC']").addClass('active_jquery_menu');

2 Comments

For future visitors who may be helped by that answer.
@Sumit note that your answer is only correct if the OP's ABC happens to refer to an ID.
6
$("a[href*=ABC]").addClass('selected');

Comments

6

Just in case you don't want to import a big library like jQuery to accomplish something this trivial, you can use the built-in method querySelectorAll instead. Almost all selector strings used for jQuery work with DOM methods as well:

const anchors = document.querySelectorAll('a[href$="ABC"]');

Or, if you know that there's only one matching element:

const anchor = document.querySelector('a[href$="ABC"]');

You may generally omit the quotes around the attribute value if the value you're searching for is alphanumeric, eg, here, you could also use

a[href$=ABC]

but quotes are more flexible and generally more reliable.

Comments

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.