2012-12-14 3 views
0

미안 두 개의 선택 상자를 사용하여 젠드 프레임 워크 2, 미안를 사용하여 응용 프로그램을 개발하는 크롬에 선택할 수 있습니다. 첫 번째는 데이터베이스의 데이터로 채워지고 두 번째는 비어 있습니다.여전히 옵션이

에서 선택한 옵션을 전달하는 버튼을 클릭 한 후 처음으로을 선택 두 번째 (자바 스크립트를 통해) 내가 에 첫 번째 선택에 disabled 속성 설정 "장애인" 그래서 다른를 그 옵션을 선택하여 두 번째 선택 항목으로 전달할 수 있습니다.

//Whithin javascript function 
    var s = document.getElementById('firstSelect'); 
    s.setAttribute("disabled","disabled"); 

모든 것은 IE, 파이어 폭스와 사파리에서 잘 작동 크롬에 있지만 하지 (처음부터 하나의 옵션을 통과 한 후 첫 번째 선택이 비활성화 및 greyedout이며, 당신은 단순히 더 많은 옵션을 선택할 수 없습니다. 다른 선택) .

모든 다른 브라우저처럼 회색하지만 또 다른 옵션을 선택하고 다른 선택 상자에 전달하는 사용자 수 있습니다 선택 첫째. 이 문제가 발생하면 더 이상 옵션을 선택할 수 없으며 다른 모든 브라우저처럼 작동합니다.

왜 그런가?

+0

내가 문제를 재현 할 수와 같은 아닙니다. 완전한 축소 된 테스트 사례를 제공해 주시겠습니까? jsbin.com의 라이브 버전이 도움이 될 것입니다. – Quentin

답변

0

사실, 크롬 권리입니다. ID (getElementById)를 기반으로 선택합니다. 이 은 반드시 DOM 트리에서 고유해야합니다 (). 따라서 동일한 ID를 가진 요소가 여러 개인 경우 Google에서 하나만 선택합니다.

은 이제 두 가지 옵션이 있습니다 를 -이 아직 IIRC 아주 잘 지원되지 않습니다하지만, 하나 getElementsByClassname을 통해 요소를로드하는 코드를 확장, 또는 getElementsByTagname를 사용합니다. 이 따라 특성을 설정을 통해 이후에 할 수있는 루프와 배열을 반환 - (대부분의 프레임 워크는 상황을 정확하게 이러한 유형의 장소에 기능이) jQuery를 (또는 다른 프레임 워크)에 들어가서 프레임 워크가 당신을 위해이 문제를 해결해야)

Succsess ..

PS : 요소 이 같은 '이름'속성을 가질 수 있습니다, 그것은 'ID'

+0

흠 .. 어쩌면 제 질문이 충분히 명확하지 않았을 수도 있습니다. 내 고유 ID (id = "firstSelect")로 선택하십시오. 따라서이 첫 번째 선택의 옵션을 클릭하고 버튼을 눌러 다른 선택 항목으로 전달하면 JS 함수는이 firstSelect에 disabled 속성이 disabled로 설정되어 있으므로 사용자가 더 이상 선택할 수 없어야 함을 알립니다 옵션. – devanerd