2010-12-16 2 views
0

...이 jquery 표현식에 어떤 문제가 있습니까? JQuery와 문서에서 나는 나의 모든 텍스트 상자를 선택하려고

$("input[@type=text]") 

올바른 구문해야한다 보인다. 내 표현이 무엇을 매우 유사하다 주어진 예제가 http://docs.jquery.com/DOM/Traversing/Selectors에서 페이지 아래로

...

$("input[@type=radio][@checked]") 

.... FireBug로 표현하는 것을 '볼 때

Syntax error, unrecognized expression: [@type='text'] 

오류가 발생했습니다.

내가 시도 ...

$("input[@type='text']")뿐만 아니라에 아무 소용이

. 나는 어떤 조언을 주셔서 감사합니다!

+0

http://api.jquery.com/attribute-equals-selector/를 참조하십시오? 나는'@ '문법이 더 이상 사용되지 않는다고 믿고 최신 버전을 사용하고 있다면 [현재의 문서] (http://api.jquery.com/category/selectors/)를보아야한다. – Chris

답변

6

당신이보고있는 API 문서는 (아마도 XPath를 선택기 기준) 오래되었습니다. 선택자 attribute-equals을보고 싶습니다. 관심있는 경우 다른 속성 선택기 (contains, starts with 등)도 있습니다.

$("input[type='text']") 당신이

예를 들어 작동합니다 : http://jsfiddle.net/jonathon/hCRkW/

+0

감사합니다. 정확합니다. 문서는 앰퍼샌드를 사용하도록 명시되어 있습니다. 내가 그것을 가져 왔을 때 그것은 예상대로 작동한다. 감사!! –

+0

@ 존, 명확하게 흔들기 위해, ** 기호 ** (@)는 ** ambersand ** (&)가 아닙니다. –

+0

링크 된 문서에는 "Selectors API의 이전 버전 : 현재 API보기"라고 나와 있습니다. – thomaspaulb

3

시도 :

$('input:text') 

그리고 :

$('input:radio') 

에서 @ 셀렉터는 jQuery를 1.2에서 사용되지 않는,되었고 저는 믿습니다 1.3에서 사라졌다.

1

시도 $('input[type=text]').

이전 버전의 jquery에서는 속성 이름 앞에 @ 기호가 필요하다고 생각합니다. 최신 버전은 그것을 원하지 않습니다.

당신이 jQuery를 버전 1.1.2를 사용하고

관련 문제