静的なヘッダーとフッターを持つ基本的な Web ページを作成しています。左側にメニューがあります。メニュー ボタンを押すと ajax リクエストが行われ、右側の DIV でテキストが更新されます。
menu01 - menu01.php には、いくつかの Mysql の結果を含む php コードが含まれています。これは正常に動作します。すべてテキスト出力なので、これはうまくいくと思います。
menu02 - Menu02.php には、RGraph を表示するための HTML コードが含まれています。一部のテキストは右側の DIV に正常に表示されていますが、グラフは表示されません。このファイルを直接呼び出すと、menu02.php ファイルが正常に表示されます。
PHPファイルからのRGraph出力は、ページの右側のDIVを更新するために使用できるxmlデータではないことがわかりました。ajax は、テキストを受信することだけを疑っていますよね? したがって、ページ全体をリロードせずに、ページを動的に更新し、適切な DIV にさまざまな種類のものを表示する別の方法を見つける必要があります。この情報で、なぜうまくいかないのかがわかると思いますが、探している結果を得る方法がわかりません。誰かがどこを探すべきか手がかりを持っていますか?
コードの一部:
index.html :
<script src="./js/ajax.js"></script>
<section id="sidebar">
<nav>
<ul>
<li> <button onclick="goto_menu1()">Menu 1</button> </li>
<li> <button onclick="goto_menu2()">Menu 2</button> </li>
</ul>
</nav>
</section>
ajax.js:
function goto_menu1()
{
var xmlHttp = getXMLHttp();
xmlHttp.onreadystatechange = function()
{
if(xmlHttp.readyState == 4)
{
HandleResponse(xmlHttp.responseText);
}
}
xmlHttp.open("GET", "./menu01/menu01.php", true);
xmlHttp.send(null);
}
function goto_menu2()
{
var xmlHttp = getXMLHttp();
xmlHttp.onreadystatechange = function()
{
if(xmlHttp.readyState == 4)
{
HandleResponse(xmlHttp.responseText);
}
}
xmlHttp.open("GET", "./menu02/menu02.php", true);
xmlHttp.send(null);
}