Я нахожусь на своем конце, и это, вероятно, что-то очень простое. В основном я есть этот код:Почему я не могу отключить этот элемент меню XUL?
var menuitem = document.getElementById('mymenuitem');
alert(menuitem);
alert(varImChecking == null);
menuitem.setAttribute('disabled', (varImChecking == null) ? 'true' : 'false');
Он должен быть отключающий пункт меню «mymenuitem», но не имеет никакого эффекта. При запуске предупреждения говорят: «[Объект XulElement]», за которым следует «true». Я знаю, что getElementById выбирает правильный элемент menuitem, потому что onclick привязывается к переменной menuitem.
Некоторые альтернативы я пробовал:
menuitem.setAttribute('disabled', (varImChecking == null));
menuitem.disabled = (varImChecking == null);
Так почему же не SetAttribute имея никакого эффекта? Он даже не затушевывает пункт меню. Есть ли другой способ, которым я должен это делать?
Редактировать: Вспомните, никаких предупреждений и ошибок не отображается в консоли.
Это странно, он должен работать, даже если файл меню жестко закодирован в файле xul. – 2009-04-24 13:01:33
Согласен. mrdrbob, возможно, вы могли бы опубликовать xul, с которым вы работали? Рад слышать, что это работает на вас, но вы определенно должны * не * добавлять его, манипулируя DOM. – pc1oad1etter
Является ли menuitem в меню, menupopup или menubutton?У вас есть это внутри объекта menupopup внутри любого родителя, который вы используете? –