0
<div dojoType="dojo.Dialog" id="alarmCatDialog" bgColor="#FFFFFF" 
     bgOpacity="0.4" toggle="standard">
   <div class='dijitInline'>
       <input type='input' class='dateWidgetInput' 
        dojoAttachPoint='numberOfDateNode' selected="true" />
</div>

このダイアログを表示する方法を試しましたdijit.byId('alarmCatDialog').show();

上記のコードはテンプレートでありdijit.byId('alarmCatDialog').show()、.jsファイルから呼び出しました。

4

1 に答える 1

1

dojoAttachPointテンプレートで使用され、属性の値を使用してウィジェットでアクセスできます。

したがって、投稿した html がウィジェット テンプレートで使用されている場合は、dojoAttachPoint. ウィジェットの js ファイルで:

dojo.declare("MyWidget", [dijit._Widget, dijit._Templated], {

  alarmCatDialog: null, // the dialog widget will be attached to this field.

  templateString: dojo.cache(...), 

  widgetsInTemplate: true,

  postCreate: function() {
    this.inherited(arguments);

    this.alarmCatDialog.show();
  }
});

id はすべての dom ノードで一意でなければならないため、ウィジェット内で id を使用しないでください。ウィジェット内で使用すると、ウィジェットの使用がページで 1 回に制限されます。

また、テンプレートにウィジェットがあるため、使用する必要がありますwidgetsInTemplate: true

http://dojotoolkit.org/reference-guide/1.7/dijit/_Templated.html#widgetsintemplate

于 2012-06-15T23:04:10.483 に答える