2013-01-18 52 views
3

我使用Dojo 1.8动态创建一组复选框。创建复选框后,我还设置了复选框的标签,但该标签在网站上不可见,但我可以在Firebug中查看HTML时看到它。任何想法我做错了什么?在这一点上,我已经查看了代码太多,无法弄清楚它是什么。谢谢!HTML标签不显示(Dojo 1.8)

var checkboxContainer = dom.byId('divLayers'); 
var chkboxId = 'chk' + layer.id; 
var chkbox = new dijit.form.CheckBox({ 
    id: chkboxId, 
    checked: layer.visible, 
    onClick: lang.hitch(this, this.toggleLayerVisibility) 
}); 
chkbox.placeAt(checkboxContainer); 
chkbox.domNode.appendChild(domConstruct.create('label', { 'for': chkboxId, innerHTML: layer.name })); 

回答

2

我发誓,我可以花时间想出来的东西,然后一刻起,我发布到网上给大家看,我解决我自己的问题。 摇头

解决方法如下。

var chkboxId = 'chk' + layer.id; 
var chkbox = new dijit.form.CheckBox({ 
    id: chkboxId, 
    checked: layer.visible, 
    onClick: lang.hitch(this, this.toggleLayerVisibility) 
}); 
chkbox.placeAt(checkboxContainer); 
var lbl = domConstruct.create('label', { 
    'for': chkboxId, 
    'innerHTML': layer.name 
}); 
checkboxContainer.appendChild(lbl);