Dojo dijit.form.FilteringSelect onChange事件未触发

Dojo dijit.form.FilteringSelect onChange事件未触发,dojo,Dojo,您好,我正在使用connect设置onChange事件,但它没有触发-没有生成错误,我不知道问题出在哪里 <select name='value(serviceRefId)' dojoType='dijit.form.FilteringSelect' id='serviceRefId'> <option value='0'></option> <option value='10109'>General Surgery</option&g

您好,我正在使用connect设置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>

普通外科
内科
门诊化验室
其他
儿科学
放射科
dojo.addOnLoad(函数(){
connect(dojo.byId(“serviceRefId”),'onChange',函数(事件){
警报(“正常”+事件);
});
});

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>

dojo.addOnLoad(函数(){
//byId返回DOMNode,而不是dijit实例,用dijit替换dojo
connect(dijit.byId(“serviceRefId”),'onChange',函数(事件){
警报(“正常”+事件);
});
});