2011-02-08 8 views
1

최근 Prototype 1.6.1에서 1.7로 업그레이드했고, 내 사이트의 JS 일부가 망가 졌음을 발견했습니다.프로토 타입 1.7 - 속성 선택기가 손상 되었습니까?

나는 esentially이 일을 해요 :이 폼 요소의 무리를 선택하는 것입니다

$$("*[required=1]").each(function (el) { 
    // stuff 
}); 

. 1.6.1에서는 완벽하게 작동했습니다. 1.7로 업그레이드 했으므로 요소를 내 양식으로 반환 할뿐 아니라 <input>을 반환하지 않습니다.

프로토 타입이 이전 선택기 엔진에서 Sizzle 1.7로 변경되었음을 알고 있으므로 추측하겠습니다. 그와 관련이 있지만, 나는이 기본이 깨질 것이라는 것에 놀랐습니다. ...

잘못된 구문을 사용하고 있습니까? 1.6으로 다운 그레이드하지 않고 어떻게이 문제를 해결할 수 있습니까?

답변

1

Ok, 속성 값을 작은 따옴표로 묶어서 실험 해 보았습니다.하지만 이것은 CSS 선택기 사양에 따라 잘못되었습니다. 그것은 선택의 반환,하지만 입력의 특히 이후
....

$$("*[required='1']").each(function (el) { 
    // stuff 
}); 

그냥이 경우 사람을 게시 같은 일에 실수를 한단다.