Показать сообщение отдельно
  #10 (permalink)  
Старый 16.01.2009, 01:06
Интересующийся
Отправить личное сообщение для gcolor Посмотреть профиль Найти все сообщения от gcolor
 
Регистрация: 19.11.2008
Сообщений: 17

В Firefox и Opera все работает коректно. Не работает в Chrome и IE.
Используеться AJAX. Клиент получает xml файл, где прописано какой єлемент ID надо изменить, и значение для изменения. Вот кусок функции
function ShowData(){ // розбираємо відповідь сервера
 for (i=0; i < xmlDOC.getElementsByTagName('response').length; i++){
       //-- получаємо значення CSS для об"єкта;
   var changeCSS=xmlDOC.getElementsByTagName("css")[i].childNodes[i].nodeValue;
      //-- получаємо ID яке потрібно змінити
   var changeID=xmlDOC.getElementsByTagName('changeid')[i].childNodes[i].nodeValue;
   //-- получаємо значення що потрібно зробити
    var methodID=xmlDOC.getElementsByTagName('methodid')[i].childNodes[i].nodeValue;
   //-- получаємо контент
    var content=xmlDOC.getElementsByTagName("maindata")[i].childNodes[i].nodeValue;
  }
    $(changeID).innerHTML=content;
//--- прикручуємо скрипти
var scripts = $(changeID).getElementsByTagName('script');
if (scripts.length > 0) {
                var l = 0;
                for (var i=0; i < scripts.length - l; i++) {
                    if (scripts[i].src) {
                        var newScr = document.createElement('script');
                        newScr.src = scripts[i].src;
                        $(changeID).appendChild(newScr);
                        l++;
                    } else {
                        var newScr = document.createElement('script');
                        newScr.text = scripts[i].text;
                        $(changeID).appendChild(newScr);
                        l++;
                    }
                }
            }
Ответить с цитированием