За последние 24 часа нас посетили 17346 программистов и 1264 робота. Сейчас ищут 1575 программистов ...

Загрузка данных в <textarea>, переданных сервером

Тема в разделе "JavaScript и AJAX", создана пользователем Битник, 1 май 2007.

  1. Битник

    Битник Активный пользователь

    С нами с:
    9 фев 2007
    Сообщения:
    103
    Симпатии:
    0
    В Opera работает хорошо, а IE ругается на строку, рядом с которой восклицательные знаки.

    Говорит, что этот элемент null или не является объектом. Этот элемент <textarea id="code"></textarea>

    [js]function updatePage() {
    // Проверяем состояние готовности сервера
    if (request.readyState == 4) {
    // Проверяем код состояния HTTP
    if (request.status == 200)
    document.getElementById("code").value = request.responseText; // !!!
    }
    }[/js]
     
  2. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    вместо value - innerHTML
     
  3. Битник

    Битник Активный пользователь

    С нами с:
    9 фев 2007
    Сообщения:
    103
    Симпатии:
    0
    Не работает.
     
  4. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    alert([document.getElementById("code").innerHTML, request.responseText])
     
  5. Битник

    Битник Активный пользователь

    С нами с:
    9 фев 2007
    Сообщения:
    103
    Симпатии:
    0
    Ммм... Посмотреть то, что приходит от сервера?
     
  6. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    см. какое из значений null в IE
     
  7. Битник

    Битник Активный пользователь

    С нами с:
    9 фев 2007
    Сообщения:
    103
    Симпатии:
    0
    Проблема оказалась в другом.

    В общем, есть скрипт, работает во всех браузерах. Срабатывает при выборе пункта из <select>. Помогите пожалуйста дополнить его так, чтобы он срабатывал так же и при загрузке старницы. В качестве выбранного пункта был бы самый первый, т. е. index.tpl :oops:

    HTML:
    1. <select id="template" onChange="loadTemplate();">
    2.     <option value="index.tpl">index.tpl</option>
    3.     <option value="header.tpl">header.tpl</option>
    4.  
    5. <textarea id="code"></textarea>
    [js]function loadTemplate() {
    var template = document.getElementById("template").value;
    var url = "/admin/functions/loadTemplate.php?template=" + escape(template);

    request.open("GET", url, true);
    request.onreadystatechange = updatePage;
    request.send(null);
    }

    function updatePage() {
    // Проверяем состояние готовности сервера
    if (request.readyState == 4) {
    // Проверяем код состояния HTTP
    // responseText - Данные, переданные сервером
    if (request.status == 200) document.getElementById("code").value = request.responseText;
    }
    }[/js]
     
  8. AlexGousev

    AlexGousev Активный пользователь

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
  9. Битник

    Битник Активный пользователь

    С нами с:
    9 фев 2007
    Сообщения:
    103
    Симпатии:
    0
    Нее, так работать не будет.

    Всё, разобрался... <body onLoad="loadTemplate">