关于基本AJAX代码的混淆

时间:2013-05-02 15:20:07

标签: php javascript xml ajax wamp

<script>
    try {
        function xmldo() {
            var xmlhttp;
            xmlhttp = new XMLHttpRequest();
            xmlhttp.onreadystatechange = function () {
                if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
                    document.getElementById("para").innerHTML = xmlhttp.responseText;
                }
            }
            var URL = "http:\\127.0.0.1\ajax.php";
            xmlhttp.open("GET", URL, true);
            xmlhttp.send();
        }
    } catch (err) {
        document.write(err.message);
    }
</script>
<p id="para">Hey message will change</p>
<br>
<button type="button" onclick="xmldo()">Click me</button>

这是我的代码网页我想通过另一个php文件中的respnse更改#para.innerHTML的内容ajax.php

<?php
$response="hey is text changed";
echo $response;
?>

我正在使用wamp所以我将我的ajax.php放在我的www文件夹中,并将服务器上的文件位置设置为127.0.0.1/ajax.php [URL]但是按下按钮时,para占位符处的文本不是变了。 我是AJAX的新手,所以必须在某些方面缺失。 Plz帮助我。

1 个答案:

答案 0 :(得分:3)

更改网址中的斜杠。

您有:http:\\127.0.0.1\ajax.php,但正确的方法是:http://127.0.0.1/ajax.php

我还建议使用jQuery来执行AJAX请求 - 它更简单,你编写的代码更少!

我在jQuery中添加了以下示例:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){

    $("#button_id").click(function(){

        $.ajax({
            url: 'http://127.0.0.1/ajax.php',
            cache: false,
            type: 'GET',
            dataType: 'HTML',
            error: function (e){
                console.log(e);
            },
            success: function (response){
                $("#para").empty().append(response);
            }
        });

    });

});
</script>

<p id="para">Hey message will change</p><br>
<button type="button" id="button_id">Click me</button>