Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.07.2009, 21:30
Аспирант
Отправить личное сообщение для sc2r2bey Посмотреть профиль Найти все сообщения от sc2r2bey
 
Регистрация: 27.06.2009
Сообщений: 60

страница не перезагружается, но не выводятся данные, введенные в форму
в чем может быть ошибка?
Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional-dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />

<title>Изучаем AJAX</title>

<script language="javascript" type="text/javascript">
    var request = false;
    try {
        request = new XMLHttpRequest();
            } catch (trymicrosoft) {
            try {
            request = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (othermicrosoft) {
            try {
                request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (failed) {
                request = false;
                }
        }
    }
    if (!request)
       alert("Error initializing XMLHttpRequest!");

    function getCustomerInfo() {
        var phone = document.getElementById("phone").value;
        var url = "/include/xtr.php?phone=" + escape(phone);
        request.open("GET", url, true);
        request.onreadystatechange = updatePage;
        request.send(null);
    }

    function updatePage() {
        if (request.readyState == 4) {
            if (request.status == 200) {
                var response = request.responseText.split("|");
                document.getElementById("order").value = response[0];
                document.getElementById("address").innerHTML = response[1].replace(/\n/g, " ");
            } else
                alert("status is " + request.status);
        }
    }
</script>
</head>
<body>
    <form>
        <p>Enter your phone number:
        <input type="text" size="14" name="phone" id="phone"
        onChange="getCustomerInfo();" />
        </p>
        <p>Your order will be delivered to:</p>
        <div id="address"></div>
        <p>Type your order in here:</p>
        <p><textarea name="order" rows="6" cols="50" id="order"></textarea></p>
        <p><input type="submit" value="Order Pizza" id="submit" /></p>
    </form>
</body>
</html>

Последний раз редактировалось sc2r2bey, 03.07.2009 в 21:34.
Ответить с цитированием
  #2 (permalink)  
Старый 03.07.2009, 22:29
Аспирант
Отправить личное сообщение для sc2r2bey Посмотреть профиль Найти все сообщения от sc2r2bey
 
Регистрация: 27.06.2009
Сообщений: 60

document.getElementById("address").innerHTML = response[1].replace(/\n/g, " "); response[1] is underfined

вот ошибка, как исправить?
Ответить с цитированием
  #3 (permalink)  
Старый 03.07.2009, 22:56
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

Откуда же мы знаем, что у вас возвращает xtr.php. Наверное, ответ приходит в таком виде, что после выполнения:
var response = request.responseText.split("|");

В массив не помещается 2-й элемент.
Ответить с цитированием
  #4 (permalink)  
Старый 03.07.2009, 23:40
Аспирант
Отправить личное сообщение для sc2r2bey Посмотреть профиль Найти все сообщения от sc2r2bey
 
Регистрация: 27.06.2009
Сообщений: 60

xtr.php пустой ))) а как передать из него переменную во 2-й элемент массива? в сам ом простом варианте
Ответить с цитированием
  #5 (permalink)  
Старый 03.07.2009, 23:48
Отправить личное сообщение для Octane Посмотреть профиль Найти все сообщения от Octane  
Регистрация: 10.07.2008
Сообщений: 3,873

А давайте вы сначала изучите основы программирования на соответствующих языках, почитаете книжки, а потом уже начнете осваивать асинхронную передачу данных по средством AJAX, чтобы бестолку не тратить ваше и наше время, задавая тривиальные вопросы?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск