- ベストアンサー
指定されるdiv の部分の再読み込み処理について
javascript についてあまりわからないですが、javascript で以下のようなことをしたいですが、よくやり方がわかないので、わかっている方は教えていただきたいです。 <div id="sample"> この部分には、DBからデータを取り出す処理が入っているとする </div> form でsubmitをすると、id が sampleのところの処理を更新してくれる ようなjavascript はどうやって実現しますか? よろしくお願いします。
- みんなの回答 (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)
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)
これはAJAXというやつですね。 javascriptで直接DBからデータを取り出すような事は普通は しません。サーバーサイドのプログラムを使います。 javascriptは、フォームに入力されたデータを、非同期通信リクエストでサーバーサイドのプログラムにGET又はPOSTして、レスポンスのDOM要素を<div>の要素にセットするという仕事をさせます。 サーバーサイドのプログラムは、送信されたデータを基にDBアクセスして結果をXHTMLで出力します。 ※AJAXを検索すれば具体的な方法が見つかります。
補足
返答してくれてありがとうございます。 実は、DBにアクセス処理も書いてありますが、ただ、formのSubmitをおしたら、どういうに<div> の部分を再度読み込みさせるのが、よくわからないですが、button押すというイベントから、どうやってdiv の 部分を起動するのを解決すれば、いいでしょうか? ありがとうございます。