javascripthtmldojocontentpane

dijit contentpane content containing attach points


something like this:

var cp = new ContentPane({
                    title: self.friends_data.data[index].name,
                    closable: true,
                    onClose:function(){
                        conf = confirm("Do you really want to Close this?");
                        if (conf){
                            self.friends_tabs[index] = null;
                            return true;
                        }
                        return false;
                    },
                    content: newTabTemplate
                });

where newTabTemplate is:

<div>
            <span data-dojo-type="dijit.layout.AccordionContainer" style="min-width: 1em; min-height: 1em; width: 100%; height: 100%;">
              <div data-dojo-type="dijit.layout.ContentPane" title="Write testimonial for friend" doLayout="false">
                <div data-dojo-type="dijit.Editor" data-dojo-attach-point="editor" data-dojo-props="onChange:function(){console.log('editor1 onChange handler: ' + arguments[0])}, extraPlugins:['foreColor','hiliteColor','fontName', 'fontSize', 'formatBlock', 'createLink', 'unlink', 'insertImage', {name: 'fullscreen', zIndex: 900}]" height=90% style=""></div>
                <!--
                dojo.connect(dijit.registry.byNode(editor1.toolbar.containerNode.children[editor1.toolbar.containerNode.children.length-1]), "onChange", function(x){alert('hello')});
              -->
              </div>
              <div data-dojo-type="dijit.layout.ContentPane" title="Read their testimonial for you" doLayout="false">
              </div>
            </span>
</div>

Now, I want cp.editor to work because in there is an attach point named editor in cp's template. but it says undefined. Any way around that?

The instantiation happens correctly i.e. the visual output is correct, only attach point is not working.


Solution

  • Add the widgets-in-template functionality to cp as a mix-in, as I believe ContentPane does not have this functionality by default.

    https://dojotoolkit.org/reference-guide/1.8/dijit/_WidgetsInTemplateMixin.html