2012-08-11 3 views
1

안녕하세요. onChange 이벤트를 설정하려면 연결을 사용하고 있지만 발사 중이 지 않습니다. 오류가 생성되지 않고 문제가 무엇인지 알 수 없습니다.dijit.form.FilteringSelect onChange 이벤트가 발생하지 않습니다.

<select name='value(serviceRefId)' dojoType='dijit.form.FilteringSelect' id='serviceRefId'> 
<option value='0'></option> 
<option value='10109'>General Surgery</option> 
<option value='10108'>Internal Medicine</option> 
<option value='10111'>Laboratory</option> 
<option value='10113'>Other</option> 
<option value='10112'>Paediatrics</option> 
<option value='10110'>Radiology</option> 
</select> 
<script type="text/javascript"> 
     dojo.addOnLoad(function(){ 
      dojo.connect(dojo.byId("serviceRefId"), 'onChange', function(event){ 
       alert('ok ' + event); 
      }); 
     }); 
</script> 

답변

3

DOM 요소에는 onChange가 실행되지 않습니다. 대신 해당 이름을 가진 dijit (widget) 형식의 이벤트가 있지만 해당 구성 요소를 얻으려면 dijit.byId을 사용해야합니다.

<script type="text/javascript"> 
    dojo.addOnLoad(function(){ 
     // dojo.byId returns a DOMNode, not a dijit instance, replace dojo with dijit 
     dojo.connect(dijit.byId("serviceRefId"), 'onChange', function(event){ 
      alert('ok ' + event); 
     }); 
    }); 
</script> 
시도
관련 문제