0

所以我有这个脚本,它使用 ajax 发布一些文本:

<?php
if (isset($_POST['q'])) {
    echo 'q is '.$_POST['q'];
} else {
?>
    <!DOCTYPE HTML>
    <html>
        <head>
            <script>
                var xmlhttp = new XMLHttpRequest();
                xmlhttp.open("POST","aj.php",true);
                xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
                xmlhttp.setRequestHeader("Accept","text/html");
                xmlhttp.send("q=some text");
                xmlhttp.onreadystatechange=function(){
                  if(xmlhttp.readyState===4&&xmlhttp.status===200)
                    if (r=xmlhttp.response||xmlhttp.responseText) 
                        document.write(r);
                    else 
                        alert("no response")
                }
            </script>
        </head>
        <body>
            body
        </body>
    </html>
<?php } ?>

输出假设为“q 是一些文本”,但在 Google Chrome (Windows) 中它会重复运行,而您所看到的只是在页面上重复出现的“正文”一词。怎么了?

4

1 回答 1

3

jQuery是一种方式

$.post('ajax.php','q=some text',function(data){
    $(document.body).html(data);
 });
于 2013-05-22T11:08:46.740 回答