Показать сообщение отдельно
  #5 (permalink)  
Старый 03.07.2009, 18:18
Аспирант
Отправить личное сообщение для 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 action="POST">
        <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>
Вопрос 1. не подгружает введенные данные, т.е. не работает, а переходит по ссылке http://xhr/POST?phone=999999999999&order=blablabla
в чем может быть ошибка?

Вопрос 2. как можно оптимизировать сей код после исправления ошибки?

Вопрос 3. где можно глубже изучить метод getElementById() ?

Вопрос 4. как происходит в данном случае обмен данными между javascript и php

Вопрос 5. как подставляется url в форму?

Думаю достаточно, спасибо!
Ответить с цитированием