2010-08-03 6 views
0

dojo.create를 사용하여 일부 기본 위젯을 페이지에 던졌습니다. 특히, 페이지에 라디오 버튼 세트를 넣었고, 제대로 작동하는지 여부는 내가 놓은 위치에 따라 다릅니다.Dojo에서 만든 기본 위젯이 작동하지 않습니다.

내가 만든 DIV에 넣고 싶습니다. 그러나, 나는 그것을 할 때, 그들은 작동하지 않습니다. 내가 그들을 몸의 맨 아래에 놓으면 그들은 일한다. 내가 이전에 만든 라디오 버튼 세트 (동일한 DIV도 만들었습니다)와 동일한 DIV에 이들을 넣으면 작동합니다. 새로운 DIV를 내부 버튼을 사용하여 작업 한 DIV 또는 페이지의 맨 아래에 놓으면 작동하지 않습니다.

"작동하지 않음"으로, 나는 onclick에 연결했지만 연결된 함수는 호출되지 않는다는 의미입니다. Firefox에서는 라디오 그룹 동작이 정상적으로 작동합니다. 그룹의 버튼 중 하나를 선택할 수 있습니다. IE 8에서는 선택한 항목을 변경할 수 없습니다.

누구나 인식하는 동작입니까?

답변

0

"도움을 요청하자마자 너는 알아낼거야." 나에게 많이 일어난다.

이 경우 문제는 내가 라디오 버튼을 넣고있는 div의 innerHTML (그냥 텍스트를 삽입하는 것)을 조정 한 것이 었습니다. 왜 그게 문제인지는 모르겠지만 그 일을하지 마십시오! innerHTML에서 작업하는 대신 몇 개의 span을 만들고 innerHTML에 할당했습니다. 그것은 문제가되지 않았습니다.

+1

innerHTML을 조정하면 해당 DOM 하위 트리가 삭제되고 다시 만들어집니다. 이렇게하면 이벤트 리스너가 무효화되고 기존 DOM 요소에 대한 참조가있는 경우 문제가 발생할 수 있습니다. – user123444555621

관련 문제