您的位置:首页 > 其它

dojo 中的 dijit.registry.byClass 的替换

2011-01-07 11:40 148 查看
使用 dijit.registry.byClass 可以很方便的将某一类的 widget 筛选出来,比如以下代码可以筛选出所有的 ToggleButton:

dijit.registry.byClass('dijit.form.ToggleButton');


但是如果想筛选出某个 div 下面的所有 Button 就无法用上述代码了。其实可以使用 dojo.query 代替上述代码:

dojo.query('#divid .dijitToggleButton');


所有 <div dojoType='dijit.form.ToggleButton' ></div> 的对象最后都会解析成<div class="其它样式... dijitToggleButton"></div>,所以 query 里面直接用 .dijitToggleButton 就可以找到它们。但是 query 返回的是 DOMNode 类型的,想要使用使用 dijit 对象还需要转换,代码如下:

dojo.query('#divid .dijitToggleButton').forEach( function (tag) {

var widget = dijit.byNode(tag);

widget.attr('checked', true);

// widget 的其它操作

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: