- ベストアンサー
Ajaxの意味について
最近、話題になっているAjaxですが、それぞれの言語の役割と意味について教えてください。キーワードはJavaScript,PHP,SQL,XML,JSON,Perl,google mapsなどなど、Ajaxに関連して耳にする言葉をそれぞれ関連させて説明していただきたいです。お願いします。ちなみにキーワードで出したすべてを説明していただかなくてけっこうです。
- saak888
- お礼率6% (16/241)
- JavaScript
- 回答数2
- ありがとう数0
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
元来HTMLのアンカー(リンク)を利用していたものを、 アンカーではなく(主に)JavaScriptを使って、あたかも別のページに移動したかのように、ページの内容(全部または一部)を書き換えることが主な目的で、それを実現させるための手段です。 (その際、更新後の内容は、初期ページと同時にダウンロードするのではなく、必要なときに必要なだけをダウンロードする) なお、どうでもいいことですが、 マウスカーソルを重ねると画像が変わるものは、非同期通信でJavaScriptを使っているものもありますが、 XMLは使っていないからといって、AjaxならぬAjaという言い方はしません。
その他の回答 (1)
- qaz_qwerty_me
- ベストアンサー率19% (214/1115)
Ajaxのキーワードは JavaScript, XML, XMLHttpRequest です。 Wikiを参考に・・・ http://ja.wikipedia.org/wiki/Ajax
関連するQ&A
- どこからがAjaxと呼ばれるものかわかりません。
質問タイトルが漠然としたものですが。。。 たとえば、「Google maps」はページをリロードすることなく、 地図内で位置を自由に移動させることができる、というので イメージがしやすいです。 ただ、prototypeやjQuery等のJavaScriptライブラリなども Ajaxと呼ばれていたり・・・。 どういう部分がAjaxなのかがわかりません。 ライブラリのプラグイン?の機能によってこれはAjaxでこれは違う、 なんてことはあるでしょうか? 例えば「Lightbox」はAjaxで、「アコーディオンメニュー」なんかは、 違う、とか。 なんだかAjaxという技術がどういうものであるのか自分の中で曖昧でよくわかりません。 (必ずしもXMLが使われている、とも限らないのでしょうか?) わからないまま質問をしているため、支離滅裂ですみません・・・ どうぞ宜しくお願いいたします。
- ベストアンサー
- AJAX
- PHP4でのAjax データ出力形式について
こんにちは PHP4.4.9でAjax通信時のデータ出力形式をどうしようか悩んでいます。 やりたい事は、HTMLのSELECTタグの中身を入れ替える事です。 普段は主にjsonでデータのやり取りをしていますが、PHP5.2以降という事でXMLにしようとしたのですが、今時じゃないのかなかなかサンプルが見つからず・・・ PEARやPECLでのライブラリ等の追加は都合上、行えません。 自前でXMLやJsonを作る事はしたくないので、よいサンプル等あればご教示ください。
- ベストアンサー
- PHP
- Ajaxでタイムアウトしてしまう
こんにちは。始めまして。 現在、perl & Ajax(prototype.js)でプログラムを組んでいます。 大雑把に言うと、入力されたキーワードにヒットするURLをPerlのLWPでGoogleから拾ってきて、HTML中のIDにAjax.Updaterで表示するものです。 その際、大量のキーワード(例えば300個くらい)を使って検索する場合、Ajax.Updaterがタイムアウトしてしまいます。 <script> new Ajax.Updater('ggl1','hogehoge.pl',{parameters: '&q=キーワード1'}); new Ajax.Updater('ggl2','hogehoge.pl',{parameters: '&q=キーワード2'}); new Ajax.Updater('ggl3','hogehoge.pl',{parameters: '&q=キーワード3'}); new Ajax.Updater('ggl4','hogehoge.pl',{parameters: '&q=キーワード4'}); new Ajax.Updater('ggl5','hogehoge.pl',{parameters: '&q=キーワード5'}); (続く続く・・・) new Ajax.Updater('ggl300','hogehoge.pl',{parameters: '&q=キーワード300'}); </script> どのようにすれば、タイムアウトさせないように出来るのでしょうか? お分かりの方がいらっしゃいましたら、ご教授ください。
- ベストアンサー
- JavaScript
- Ajaxの動き
googleと本で調べたのですが、今いちわからないため質問させてください。 (1)教科書から、Ajaxは、XMLをJavascriptでやり取りしている非同期通信という定義なのはわかりましたが、結局、AJAXを使うということは、HTMLに、<Script>のタグで、JQueryなどのパスを書くということなのでしょうか? AJAXは概念的なものであって、プログラムやモジュールそのものではないと捉えています。 (2)Ajaxによる非同期通信は、何をきっかけとして通信が始まるのでしょうか? 通常は、FORMがSUBMITされたときに、サーバにリクエストがいくという認識ですが そもそも、Ajaxは、何をイベントとしてハンドルしているのでしょうか?(何をきっかけに処理が始まっているのでしょうか?) HTMLに、<Script>のタグで、JQueryのパスを書くと、ハンドルする機能が使用されるのでしょうか? Ajaxでも「リクエスト」は行われているけれども、処理結果として戻されるものがXML形式であるだけだという理解で良いのでしょうか?
- ベストアンサー
- AJAX
- Jquery,JSON,Ajax,PHP連携
プログラミング初心者です。 教えてください。 最近Webのトレンドとして使われている言語で Jquery,JSON,Ajax,PHPなどがありますが、それぞれどの部分の処理をしているものなのか、 また、どのように呼び出して連携させるのか、実際のサンプルなど使った図解でわかりやすいものがあったら教えていただけますでしょうか。 よろしくお願いします。
- ベストアンサー
- JavaScript
- JavaScriptからPHPに配列を渡すやり方
JavaScriptからPHPに配列を渡すやり方を教えてください。 やりたい事は、A.HTMLのJavaScriptで動的に作成された配列をB.PHPにPOSTで渡して、B.PHPに遷移したいと思っています。Ajax、JSONなどのキーワードで検索するとそれらしい回答はあるのですが、B.PHPに遷移したいので、Ajaxでもないような気がして、やりたい事にマッチする回答がありませんでした。配列列をHiddenで渡すしかないのでしょうか。もう少しスマートのやり方がないでしょうか。 よろしくお願いします。
- ベストアンサー
- JavaScript
- どこまでがAjaxなの?
現在、Ajaxを勉強中の初心者です。 質問のタイトル通りなのですが、どこまでがAjaxなのかイマイチわかりません。 AjaxはJavaScript + XMLで非同期通信をする技術ですが 1.画像やプログラムファイルをサーバPC側に入れておいてクライアントPC側でラジオボタンの選択によって画像表示を変えるのはAjaxですか、それともただのJavaScriptですか? 2.サーバを使って以下のような入力可能文字カウンタを表示させるのはAjaxですか、それともただのJavaScriptですか? <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>文字のカウント</title> </head> <body> <form> <textarea cols="46" rows="5" id="title1" name="title1" size="50"></textarea><br /> あと<span id="inputlength1">20</span>文字入力できます<br /> </form> <script type="text/javascript"><!-- function lengthCounter (node, max, cut) { max = max || Number (node.maxLength) || 20; return function () { var rest = max - node.value.length; if (rest < 0) { if (cut) { alert ('20文字以内にしてください'); rest = max; node.value = node.value.substring (0, max); } } return rest; }; } function dispValue (node, cbFunc) { return function () { node.firstChild.nodeValue = cbFunc (); }; } setInterval (dispValue ( document.getElementById ('inputlength1'), lengthCounter (document.getElementById ('title1'), 20, true)), 100); // --></script> </body> </html> 3.「googleサジェストのインクリメンタル検索にはAjaxの技術が利用されている」←ここでのAjaxにはPHPも含まれますか? 私はPHPをAjaxの枠には入れないような気がします。正確にはPHPとAjaxでインクリメンタル検索機能がつくられていると思うのですが。 4.PHPのみでAjaxと同じ非同期通信ができればそれはAjaxと呼ぶのか? よろしくお願いします。
- ベストアンサー
- AJAX
- Ajaxのエンコードで
私はshift_JISで作成したCGIのページがあるのですが、 Ajaxを導入しようとしたときに、Ajaxというか Javascriptでは、utf-8しか認識しないととあるサイトに書いてあったのですが、 そのCGIのページをphpに変更するにはものすごく多大な時間が 必要になってしまうんですが、CGIをutf-8仕様にするのも大変です AjaxでShift_JISに変換するような事はできませんでしょうか? http://javascriptist.net/ref_prototype/ajax.periodicalupdater.html のサイトに乗っている <script type="text/javascript" src="/js/prototype.js"></script> <script type="text/javascript"> var myajax; function execute() { myajax = new Ajax.PeriodicalUpdater( "container", "./member.cgi", { "method": "get", "parameters": "id=$id", frequency: 5, // 5秒ごとに実行 onSuccess: function(request) { // 成功時の処理を記述 // alert('成功しました'); // jsonの値を処理する場合↓↓ // var json; // eval("json="+request.responseText); // ↓IEでもキャッシュを読み込まずに毎回リモート接続を実行するためのコード(パラメータの書き換え) var str = myajax.options.parameters; var hash = str.parseQuery(); hash["ajax_request_id"] = Math.random(); hash = $H(hash); myajax.options.parameters = hash.toQueryString(); }, onComplete: function(request) { // 完了時の処理を記述 // alert('読み込みが完了しました'); // jsonの値を処理する場合↓↓ // var json; // eval("json="+request.responseText); }, onFailure: function(request) { alert('読み込みに失敗しました'); }, onException: function (request) { alert('読み込み中にエラーが発生しました'); } } ); } </script> を使用して自動更新をしようと思っているのですが
- ベストアンサー
- JavaScript
- IEでAjax
現在、以下のソースをもとにAjaxのテストをしているのですが FireFoxだと正常に動作されますが、IE8だと無反応です。 もちろんJavaScriptは有効にしています。 この原因はどこにあるのでしょうか? ■test.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitiona..."> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>テスト</title> <script type="text/javascript"> <!-- var ajax = new XMLHttpRequest(); function makeTable(keyword) { ajax.onload = function() { document.getElementById('layerTable').innerHTML = ajax.responseText; } ajax.open('GET', 'sample.php?keyword=' + keyword, true); ajax.send(null); } </script> </head> <body> <h1>Ajaxのテスト</h1> <form id="formMain" name="formMain" method="post" action=""> <p>キーワードを入力して、表示するボタンをクリックしてください。</p> <p> <input type="text" name="keyword" size="35"> <input name="buttonMake" type="button" id="buttonMake" value="表示する" onClick="makeTable(this.form.keyword.value)" /> </p> </form> <div id="layerTable">ここに応答が表示されます</div> </body> </html> ■sample.php <?php $keyword = $_GET['keyword']; $doc = "<b>Ajaxのテストです</b><br />"; $doc .= "キーワードは{$keyword}"; print($doc); ?>
- ベストアンサー
- AJAX
- googleマップにajax
googleマップにajax、php、mysqlを使って複数マーカを表示したい場合 googleマップの地図をマウスで動かすごとにmysqlのSqlを実行しデータ を抽出してgoogleマップに表示しているのでしょうか。
- ベストアンサー
- AJAX