href가 문자열로 끝나는 <a>를 선택하십시오.


669

href가 "ABC"로 끝나는 모든 링크 를 선택하기 위해 jQuery 를 사용할 수 <a>있습니까?

예를 들어이 링크를 찾으려면 <a href="http://server/page.aspx?id=ABC">

답변:


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

선택기 설명서는 http://docs.jquery.com/Selectors 에서 찾을 수 있습니다.

속성의 경우 :

= 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-...")

20
최근에 변경된 것이 있습니다. $ ( '[href $ =-abc]')가 작동했습니다. 이제 따옴표가 필요합니다 $ ( '[href $ = "-abc"]') 변경시기를 모르겠습니다. 어쩌면 항상 따옴표가 필요하고 이전에 작동했던 것 같습니다.
gman

12
"ABC"는 대소 문자를 구분합니다. (그것을 알아 내기 위해 꽤 많은 시간을 보냈습니다 ...)
Louis Somers

href를 얻는 방법 jquery에 ABC가 포함되어 있지 않습니다
sf.dev

1
@ sf.dev$('a').filter(function() { return !this.href || !this.href.match(/ABC/); });
tvanfosson

9
이것은 현재 바닐라 javascirpt와 함께 작동합니다. document.querySelectorAll('a[href$="ABC"]')이를 달성하기 위해 간단히 사용할 수 있습니다 .
k-nut

21
$('a[href$="ABC"]:first').attr('title');

"ABC"로 끝나는 URL이있는 첫 번째 링크의 제목을 반환합니다.


4
수정 : ABC로 끝나는
sparkyspider

실제로 약간의 차이가 있습니다. 이것은 주어진 href와의 첫 번째 링크를 선택하며 하나만 변경해야 할 때 유용합니다.
alekwisnia

15
$("a[href*='id=ABC']").addClass('active_jquery_menu');

2
그 답변으로 도움을받을 수있는 미래의 방문객들을 위해.
sscirrus

@Sumit은 OP ABC가 ID를 참조하는 경우에만 답변이 정확하다는 점에 유의 하십시오.
sscirrus


2

이 사소한 것을 달성하기 위해 jQuery와 같은 큰 라이브러리를 가져오고 싶지 않은 경우 내장 메소드를 querySelectorAll대신 사용할 수 있습니다 . jQuery에 사용되는 거의 모든 선택기 문자열은 DOM 메소드에서도 작동합니다.

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

또는 일치하는 요소가 하나만있는 경우 :

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

검색하는 값이 영숫자 인 경우 일반적으로 속성 값 주위에 따옴표를 생략 할 수 있습니다. 예를 들어 여기에서

a[href$=ABC]

그러나 따옴표는 더 유연하고 일반적으로 더 안정적 입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.