dポイントプレゼントキャンペーン実施中!

JavascriptからPHPを呼び出し
その結果でHTMLを書き換えるという処理を行っています。

その際、2箇所同時に書き換えるため1つのfunctionの中で
2回PHPを呼んで書き換えているのですが1回目の結果しか画面には
反映されません。これはなぜでしょうか?

以下のソースでやっており、hogeもhoge2も単独で動かした場合は
それぞれ正常に動いてます。

function hoehoe(){
req = new XMLHttpRequest();
req.open("POST","hoge.php",true);
document.getElementById('hoge').innerHTML = req.responseText;

req2 = new XMLHttpRequest();
req2.open("POST","hoge2.php",true);
document.getElementById('hoge2').innerHTML = req2.responseText;
}

長くなってしまいましたが、よろしくお願いします。

A 回答 (1件)

明確に原因は分かりませんが、あまり考えても出来ない事は出来ない、と割り切らないとはまりっぱなしになりますよ。

 
とりあえず、こんな感じに書き換えたらどうなんでしょう。

function hoehoe(hoge){
req = new XMLHttpRequest();
req.open("POST",hoge+".php",true);
document.getElementById(hoge).innerHTML = req.responseText;
}

function hoehoe2(){
hoehoe("hoge");
hoehoe("hoge2");
}

# OperaとIEとSafariとFirefoxで挙動が違ったりする場合も、そういうもの、として割り切らないとうまくいきませんからね。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!