>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Разработка http://forum.mozilla-russia.org/viewforum.php?id=18 >Управление select-ом из расширения http://forum.mozilla-russia.org/viewtopic.php?id=21994 |
abc > 10-03-2008 20:51:05 |
Добрый день! Не могу решить следующую задачу: Есть html-страница с формой (не моя, изменению не подлежит), на которой, среди прочего, есть элемент <select id="foo" onchange="changefoo()"> задача - изменить из расширения (в боковой панели) текущую опцию в select так, чтобы сработала on-функция. Код getContent().document.getElementById("foo").selectedIndex = ind; действительно меняет текущую опцию. А вот on-функция не вызывается. Что делать? Заранее спасибо! |
homo_nudus > 11-03-2008 09:36:42 |
попробуйте добавить: Выделить код Код:var evt = getContent().document.createEvent("HTMLEvents"); evt.initEvent("change", true, false); getContent().document.getElementById("foo").dispatchEvent(evt); |
Shutnik > 11-03-2008 11:18:32 |
homo_nudus > 11-03-2008 19:18:58 |
To Shutnik: Тоже хорошо, но предыдущий вариант будет работать и в тех случаях, когда функция повешена каким-нибудь сценарием через перехватчик событий, а не вшита в разметку. Впрочем, вопрошавшему это, может быть, и не нужно. |
abc > 11-03-2008 23:31:54 |
У вопрошавшего, действительно, on-функция вызвалась. Все оказалось просто. Спасибо! |