dojo获取组件(组件对象)的方法总结

前端之家收集整理的这篇文章主要介绍了dojo获取组件(组件对象)的方法总结前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Email:longsu2010 at yeah dot net@H_502_3@

dojo获取组件对象建议使用dijit/registry模块。这是dojo2.0风格的获取方式。

该模块提供了如下一些方法获取组件对象,这里需要注意获取的不是dom对象。 @H_502_3@ 1、byId:根据组件的id获取到组件对象。关于id的确定规则" http://blog.csdn.net/tt361/article/details/8745226"中有提到。 @H_502_3@ 2、byNode:根据dom节点获取组件对象,也就是说这个dom节点不是普通的dom节点,dojo对象生成在该dom节点上。 @H_502_3@

3、findWidgets:根据dom节点,获取dom节点内部的非嵌套子组件, 返回值为一个数组。如下生成的组件,执行registry.findWidgets(dom.byId("root"))返回的是包含两个form组件的数据,不会包含form内的组件。

<div id="root" data-dojo-type="dijit/layout/ContentPane">
    <form id="form1" data-dojo-type="dijit/form/Form">
        <input data-dojo-type="dijit/form/TextBox" />
    </form>
    <div>
        <form data-dojo-type="dijit/form/Form">
            <input data-dojo-type="dijit/form/TextBox" />
        </form>
    </div>
</div>
4、getEnclosingWidget:若知道jquery closest方法,那就好说了,功能类似。给定一个dom对象, 获取该dom祖先组件对象中离该dom节点最近的组件对象。仍以上面的这段html为例,registry.getEnclosingWidget(dom.byId("form1"))将会去到id为root的组件对象。

猜你在找的Dojo相关文章