2013-01-07 4 views
0

내 Struts 라디오 버튼에 이벤트를 첨부 할 수없는 것 같습니다.struts 라디오 버튼에 onclick 이벤트 첨부

그것은으로 정의되어 :

<s:radio id="useCourseList" 
     name="useCourseList" 
     required="true" 
     label="Course List?" 
     labelposition="top" 
     list="#{'1':'No','2':'Yes'}" 
     value="1" 
/> 

하지만 난 그것에 대한 클릭 이벤트를 만들 수없는 것. 나는

$('#useCourseList').click(function(event){ 
    if($(this).val() === '2') { 
     renderCourseList(); 
    } else { 
     switchToSingleCourseMode(); 
    } 
}); 

을 시도하지만 그에게 "useCourseList"를 첨부 - 버튼의 실제 ID를하지만, "useCousreList1"와 "useCourseList2을"입니다.

둘 다 동일한 클릭 이벤트를 할당하는 것이 좋지 않습니다. 특히 나중에 더 많은 옵션이 추가 될 때부터 추가해야합니다. "one and done"을 어떻게 추가 할 수 있습니까?

+0

당신이 생성 된 HTML 대신에 무엇을 보여줄 수 있습니다 참조? – Alexander

+0

실제 ID가 jQuery 선택기에서 사용하는 ID와 다른 경우에는 물론 실행되지 않습니다. 대신 클래스 속성을 요소에 추가하고 클래스별로 선택하십시오. – hayavuk

+1

라디오 버튼에 CSS 클래스를 지정하고 대신 CSS 클래스를 사용하십시오. –

답변

2

렌더링 된 html이 정의 된 ID와 정확히 일치하지 않는다고 가정합니다. 당신이 시도 할 수 :

$('[id*="useCourseList"]').click(... 

http://api.jquery.com/attribute-contains-selector/

+0

@OP : 사용 된 선택기에 대한 참조 : http://api.jquery.com/attribute-contains-selector/ – hayavuk

관련 문제