0

画像がクリックされたときに、johnという名前のdivのコンテンツをphpファイルからの出力に変更したいと思います。簡単だと思いますが、ぴったりの例が見つかりません。これが私のコードです:

function ajaxFunction(){
                var ajaxRequest;
                    ajaxRequest = new XMLHttpRequest();
                ajaxRequest.onreadystatechange = function(){
                    if(ajaxRequest.readyState == 4){
                        document.getElementById("john").innerHTML=xmlhttp.responseText;
                    }
                }
                ajaxRequest.open("GET", "test.php", true);
                ajaxRequest.send(null); 
            }

html

<img class='cross' src='images/cross.png' onclick="ajaxFunction();">
<div id='john'>john</div>

test.php

<?php echo "hello"; ?>
4

3 に答える 3

0

JavaScriptで構文エラーが発生したように見えます。responseTextあなたはから取得しようとしていますがxmlhttp、あなたXMLHttpRequestはに保存されています ajaxRequest

これを試して

function ajaxFunction(){
    var ajaxRequest = new XMLHttpRequest();
    ajaxRequest.onreadystatechange = function(){
        if(ajaxRequest.readyState == 4 && ajaxRequest.status==200){
                document.getElementById("john").innerHTML=ajaxRequest.responseText;
            }
        }
    ajaxRequest.open("GET", "test.php", true);
    ajaxRequest.send(); 
}
于 2012-09-15T09:17:52.937 に答える
0

クロスブラウザ/バージョンについて提案できますか?

var ajaxRequest = getXMLHttpRequest();

その後、

function getXMLHttpRequest() {
    var re = "nothing";
    try {re = new window.XMLHttpRequest();} catch(e1) {};
    try {re = new ActiveXObject("MSXML2.XMLHTTP.4.0");} catch(e) {};
    try {re = new ActiveXObject("Msxml2.XMLHTTP");} catch(e2) {};
    try {re = new ActiveXObject("Microsoft.XMLHTTP");} catch(e3) {};
    try {re = new ActiveXObject("MSXML2.XMLHTTP.3.0");} catch(ex) {};
    if (re != "nothing") {return re;}
    else {return null;};
};

に変更するだけでなく

ajaxRequest.responseText();
于 2012-09-15T09:42:09.403 に答える
0

私は以下のコードでそれを解決することができました。このコードは、phpファイルから「hello」を取得した後に要素のIDも返します。

<script language="javascript">
            function calldislike(str){
                if (str==""){
                  document.getElementById("john").innerHTML="";
                  return;
                  }
                xmlhttp=new XMLHttpRequest();
                xmlhttp.onreadystatechange=function(){
                    if (xmlhttp.readyState==4 && xmlhttp.status==200){
                    document.getElementById("john").innerHTML=xmlhttp.responseText;
                    }
                }
                xmlhttp.open("GET","test.php?q="+str,true);
                xmlhttp.send();
            }
        </script>

<img src='images/cross.png' onclick="calldislike(this.id);" id='3'>
<div id='john'>john</div>

test.php

<?php echo "hello".$_GET["q"];  ?>
于 2012-09-16T09:30:26.420 に答える