我有以下代码,它动态构建XUL接口,然后将radiobutton radio3设置为有效的radiobutton:
addTab: function () {
try {
var tabpanels = document.getElementById("folderPropTabPanel");
if (!tabpanels) { // TB v2.0 beta
var tabbox = document.getElementById("folderPropTabBox"); // This is the parent of tabpanels
tabpanels = tabbox.childNodes[1];
}
var vbox1 = document.createElement('vbox');
tabpanels.firstChild.nextSibling.appendChild(vbox1);
var radiogroup1 = document.createElement('radiogroup');
radiogroup1.setAttribute('id', 'radiogroup1');
vbox1.appendChild(radiogroup1);
var radio1 = document.createElement('radio');
radio1.setAttribute('id', 'radio1');
radio1.setAttribute('label', 'radio1');
radiogroup1.appendChild(radio1);
var radio2 = document.createElement('radio');
radio2.setAttribute('id', 'radio2');
radio2.setAttribute('label', 'radio2');
radiogroup1.appendChild(radio2);
var radio3 = document.createElement('radio');
radio3.setAttribute('id', 'radio3');
radio3.setAttribute('label', 'radio3');
radiogroup1.appendChild(radio3);
document.getElementById('radiogroup1').selectedItem = document.getElementById('radio3');
Application.console.log(document.getElementById('radiogroup1').selectedItem.tagName);
Application.console.log(document.getElementById('radiogroup1').selectedItem.id);
} catch (e) {
Application.console.log(e);
}
}
在我的扩展程序中运行此代码后,我看到三个radiobutton,但是我没有看到第三个radiobutton内的点。此外,我不能使用鼠标选择任何其他radiobutton。我没有在控制台中看到任何错误,只有两个词:'radio','radio3',所以我的代码似乎工作正常。它是Thunderbird中的错误,还是什么?