Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: android9 от 23 Февраля 2011, 22:03:16

Название: Не работает document.getElementById в расширении для FF
Отправлено: android9 от 23 Февраля 2011, 22:03:16
Привет!
Подскажите плиз, почему не работает document.getElementById
Есть расширение для Firefox. И есть форма, возвращаемая сайтом. В эту форму пользователь что-то пишет. Задача расширения считать текст с формы, сделать что-то с ним и поместить обратно в форму. Мое расширение вызывается из Tools (Firefox). Пользователь нажимает кнопку и вызывается функция расширения read_form.form_read

var read_form = {
   form_read: function() {
   var f = document.getElementById( \'postMessage\' );
   if(!f ) { alert(\'ERROR\'); return;}    
   // Step through the form elements
   for( var i = 0; i < f.elements.length; i++ ) {
      alert( f.elements[i].name );
    }
  }
};



Но проблема в том, что эта функция не находит форму \'postMessage\'! Как указать, что document - это текущая вкладка в браузере?
Название: Не работает document.getElementById в расширении для FF
Отправлено: brainkiller от 24 Февраля 2011, 00:53:36
А в консоли ошибок что пишется?
Название: Не работает document.getElementById в расширении для FF
Отправлено: android9 от 24 Февраля 2011, 02:20:19
Цитировать
brainkiller:
А в консоли ошибок что пишется?

Пишет
Error: document.postMessage is undefined
Source File: chrome://helloworld/content/overlay.js
Line: 15

overlay.js
13. var read_form = {
14.  form_read: function() {
15.  alert (document.postMessage.message.value);
  }
};

overlay.xul
12.
Название: Не работает document.getElementById в расширении для FF
Отправлено: android9 от 24 Февраля 2011, 02:32:27
Я еще пробовала в overlay.xul считывать значение: