2011-08-04 5 views
1

私は次のコードを持っている:私がやろうとしています何FilteringSelect dojoウィジェットのonchangeイベントのデフォルト動作を上書きする方法はありますか?

dijit.byId('patient').onchange(function(event){ 
     var term=dijit.byId('patient').get('value');                
     patientList.url = ".calendar/search-patient?term="+term; 
     patientList.close();         
}) 

はFilteringSelectの道場ウィジェットの「のonchange」イベントのデフォルトの動作を上書きすることです。問題は、「この延期は既に解決されました」というエラーが表示されることです。

"onchange"イベントのデフォルト動作をどのように上書きできますか?ありがとう

+0

を、しかし追加してみてください 'falseを返す;'としても。 –

+0

私もそれを試みました。同じエラー。私は、その要素の "onchange"イベントが見えたら、それはエラーを起こすので、preventDefault()ポイントに達していないと思います。 – sica07

+0

'alert( 'debug');を追加すると、それはまったく見えますか? –

答えて

2

関数は、dijitオブジェクトを返します。関数としてパラメータをとる関数onchangeはありません。

この代わりにやってみてください。このフレームワークに精通していない

dojo.connect(dijit.byId("patient"), "onChange", function(value) 
{ 
    patientList.url = ".calendar/search-patient?term=" + value; 
    patientList.close(); 
}); 
+0

ありがとうございます。このようにしてエラーは発生しませんが、私は何のレスポンスも得られないので、イベントを聞いている(またはイベントを上書きしない)とは思えません。 )。 – sica07

+0

@ sica07それは変です。 'onchange'ではなくonChangeを使用していますか?ここにフィドルがあります:http://jsfiddle.net/D7Xym/ – Frode

+0

onchangeが問題でした。愚かな私。今それは動作します!どうもありがとう! – sica07

関連する問題