• ベストアンサー

指定されるdiv の部分の再読み込み処理について

javascript についてあまりわからないですが、javascript で以下のようなことをしたいですが、よくやり方がわかないので、わかっている方は教えていただきたいです。 <div id="sample"> この部分には、DBからデータを取り出す処理が入っているとする </div> form でsubmitをすると、id が sampleのところの処理を更新してくれる ようなjavascript はどうやって実現しますか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

超適当に書いて見た。適切に直してね <script> function Getdata() { var xmlHttp = (window.ActiveXObject)?new ActiveXObject("Msxml2.XMLHTTP"):new XMLHttpRequest(); xmlHttp.open("POST","DB_Access.php",true); xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); var Querydata="prm1=val1&prm2=val2&prm3=val3"; //<=から取ればよい。 xmlHttp.send("Querydata"); xmlHttp.onreadystatechange = function(){ if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { document.getElementById("sample").innerHTML=xmlHttp.responseText; } }; } </script> <form action="#"> ------ <input type="submit" onclick="Getdata();return false;"> </form>

その他の回答 (2)

  • taporu
  • ベストアンサー率44% (46/104)
回答No.2

Ajaxは途中まで、javascriptと同じの処理をします。 例: <html> <head> <script type="text/javascript"> <!-- function DBdata() { //実行する処理 } //--> </script> </head> <body> <input type="bottom" value="クリック" onclick="DBdata();"> <div id="sample"></div> </body> </html> こんな感じでいいと思います

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.1

これはAJAXというやつですね。  javascriptで直接DBからデータを取り出すような事は普通は しません。サーバーサイドのプログラムを使います。  javascriptは、フォームに入力されたデータを、非同期通信リクエストでサーバーサイドのプログラムにGET又はPOSTして、レスポンスのDOM要素を<div>の要素にセットするという仕事をさせます。  サーバーサイドのプログラムは、送信されたデータを基にDBアクセスして結果をXHTMLで出力します。 ※AJAXを検索すれば具体的な方法が見つかります。

ikutame
質問者

補足

返答してくれてありがとうございます。 実は、DBにアクセス処理も書いてありますが、ただ、formのSubmitをおしたら、どういうに<div> の部分を再度読み込みさせるのが、よくわからないですが、button押すというイベントから、どうやってdiv の 部分を起動するのを解決すれば、いいでしょうか? ありがとうございます。

関連するQ&A