JQueryでAjax 藤田@ジャストプレイヤー ※参考しまくり文献 jQuery日本語リファレンス.

Slides:



Advertisements
Similar presentations
JavaScript における DOM 操作 XML 読み込み Ajax( 動的 HTML 編集 ) 情報システム工学科ラシキアゼミ 3年 H 107072 田中直樹.
Advertisements

Integrated Personal Page C05823 森本万里子 C05829 西山礼恵 C05899 高木華子.
Copyright © Ariel Networks, Inc. AJAX 勉強会 アリエル・ネットワーク株式会社.
情報アプリケーション1 2006 年 10 月 12 日 第四回資料 担当 重定 如彦. 目次 データの送信とフォーム クイズ CGI 複数のパーツのデータの分割方法 配列変数.
1 安全性の高いセッション管理方 式 の Servlet への導入 東京工業大学 理学部 千葉研究室所属 99-2270-6 松沼 正浩.
1 PHP プログラムの実行(まと め) 担当 岡村耕二 月曜日 2限 平成 22 年度 情報科学 III (理系コア科目・2年生) 本資料の一部は、堀良彰准教授、天野浩文准教授、菅沼明 准教授等による以前の講義資料をもとにしています。
DB(データベース)のおはなし 作成者:小野正広 DBと言っても、  ドラゴンボール ではないですぞ! 3/1/2017.
ハルビン絵葉書コレクションシステムの再構築と機能追加 -サーバ側:PHPとMySQLを用いて
画像展示サイト“Fragments” 『閲覧しやすさ』と『デザイン性』を両立させた Webデザイン
JPAを利用した RESTful Webサービスの開発
WEBから確認できる 駐車場管理システムについて
NC-2 情報通信基礎実験 WEBデザイン基礎実験 (2日目) 担当:清水,田代 副手:浦辺,石井.
情報システム工学科 ラシキアゼミ 3年 H 田中直樹
IE5でアプリケーション開発 東日本計算センター 小野 修司.
オペレーティングシステムⅡ 第5回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/11/6.
Hot Pepper for iPod touch
「絵葉書を通じてのハルビンの 街の印象調査」システムUIの iPadアプリ化 谷研究室  飯 祐貴.
エンタープライズアプリケーション II 第10回 / 2006年7月23日
情報理工学部 情報システム工学科 4年 H 亀窪祐太 H 纐纈琢真
第4回 個人の動画配信補足のためのWeb構築
Webサービスマッシュアップを利用したWebアプリケーションの開発
第1回 JavaScriptゼミ ・ scriptエレメント ・ 記述における諸注意 ・ 古いブラウザへの対応方法
オペレーティングシステムⅡ 第3回 講師 松本 章代 VirtuaWin・・・仮想デスクトップソフト 2009/10/16.
PHP 実用的なサンプル 浅川 和久 2017/3/18 PHP 実用的なサンプル.
Bottle/Pythonによる Webアプリ入門
Web App Semi 2008 #1 Web App Semi 2008 #1.
PHP プログラムの実行 担当 岡村耕二 月曜日 2限 平成22年度 情報科学III (理系コア科目・2年生)
4-3.基本的なPHPスクリプト 2004年6月24日(木) 大北高広 01T6010F.
Real Time Graph 指定された計測のデータを実時間収集サーバ(LABCOM)から取得し、リアルタイムにグラフとして表示する。
ビューとコントローラ.
HTTPプロトコルとJSP (1) データベース論 第3回.
Curlの仕組み.
新規配信先リスト登録 配信実行及び経過確認 配信状況確認 メルマガ関連(オプション)
押さえておきたいIE8の セキュリティ新機能
HTTPプロトコル J2EE I 第7回 /
Day3 Day4 Day3 Day4.
(B2) 親: minami, kazuki 多様な認証機器に対応する 認証システム (B2) 親: minami, kazuki.
XML読み込みとDOM操作で Ajaxに近づこう
情報整理のための Google Map API入門
情報コミュニケーション入門 総合実習(1) 基礎知識のポイント(2)
Servlet入門(2) 入力フォームをつかったWebアプリ
サイバーセキュリティ演習 ― Webセキュリティ基礎&実践―
データベース設計 第9回 Webインタフェースの作成(1)
基幹理工学研究科 情報理工学専攻 後藤研究室 修士1年 魏 元
実際にたたいてAPI APIの初歩からプログラムまで使用方法のAtoZ.
第8章 Web技術とセキュリティ   岡本 好未.
9.1 DOMの概要 9.2 DOMプログラミングの基礎 9.3 DOMのプログラミング例
ガジェット・マスターへの まわり道!? ~Ajaxを理解しよう~
制作技術ー4 アクセスカウンタ等付加機能 PHP と Javascript
Javaによる Webアプリケーション入門 第6回
Cisco Umbrella のご紹介 2018 年 1 月.
第7回JavaScriptゼミ セクション4-5 発表者 直江 宗紀.
制作技術ー3 双方向通信 : CGIシステムと環境変数
Webセキュリティ 情報工学専攻 1年 赤木里騎 P226~241.
3-3.テーブルを更新する 2004年 4月22日(木) 01T6074X 茂木啓悟.
ネットワークプログラミング (5回目) 05A1302 円田 優輝.
Webプロキシ HTTP1.0 ヒント CS-B3 ネットワークプログラミング  &情報科学科実験I.
基礎プログラミング演習 第12回.
情報コミュニケーション入門b 第11回 Web入門(2)
情報コミュニケーション入門e 第12回 Part1 Web入門(2)
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
ASP.NET 2.0による Webサービスの構築 2008年10月18日 こくぶんまさひろ.
情報コミュニケーション入門e 第12回 Part1 Web入門(2)
CO-Client Opeartion 1.1 利用履歴データベースの設計 (スキーマ バージョン 対応)
ネットワークプロトコル.
ASP.NET 2.0による Webサービスの構築 2008年10月18日 こくぶんまさひろ.
サムライクラウド連携検証 サンプルガジェット 解説資料.
今の俺にシカクはねぇ!! 資格取得支援システム.
例題のプログラムを通して JavaScriptの仕組みを理解することとします。
HTTPプロトコルの詳細 M1 峯 肇史.
Presentation transcript:

jQueryでAjax 藤田@ジャストプレイヤー ※参考しまくり文献 jQuery日本語リファレンス

Ajaxとは AjaxとはWebブラウザに実装されているJavaScriptのHTTP通信機能を使って、Webページのリロードを伴わずにサーバとデータのやり取りを行なって処理を進めていく対話型Webアプリケーションの実装形態 従来は、Webブラウザを使ったWebアプリケーションでは、データをサーバに通知して処理結果を得るにはページ全体をロードしなおさなければならなかった 参照元:http://e-words.jp/w/Ajax.html

早速jQueyで実装を HTMLファイル(index1.html) PHPファイル(index1.php) <script src="jquery-1.4.4.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $.get(“index1.php”, function(data){ alert(“データ: ” + data “を読み込みました。”); }); }); </script> PHPファイル(index1.php) <?php echo "hogehoge"; ?>

早速jQueyで実装を ページ読み込んだ後に、このように表示されます。

解説 ① Getメソッドで実行 ② 実行、または読み込むサーバのファイル $.get(“index1.php”, function(data){ alert(“データ: ” + data “を読み込みました。”); }); ① ② ③ ① Getメソッドで実行 ② 実行、または読み込むサーバのファイル ③ サーバのファイルを読み込んだ後に実行するjavascript処理。dataはサーバのファイルが出力した文字列。

実用的なのを HTMLファイル(index2.html) PHPファイル(index2.php) <script src="jquery-1.4.4.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $.getJSON(“index2.php", function(json){ alert(json[0].name) }); } ); }); </script> PHPファイル(index2.php) <?php echo <<< DOC_END [ {"name":"oec", "com":"dogrun"}, {"name":"hebishima", "com":"ziro"} ] DOC_END; ?>

実用的なのを ページ読み込んだ後に、このように表示されます。

解説 ① Getメソッドで実行し、json形式として値を取得 ② 実行、または読み込むサーバのファイル $.getJSON(“index2.php", function(json){ alert(json[0].name)}); } ); ① ② ③ ① Getメソッドで実行し、json形式として値を取得 ② 実行、または読み込むサーバのファイル ③ サーバのファイルを読み込んだ後に実行するjavascript処理。jsonはサーバのファイルが出力した文字列をjson形式に変換した値。

jsonって何ぞ? JavaScript Object Notationの略称 名前と値のペア,および,配列という2つのシンプルな構造  名前と値のペア,および,配列という2つのシンプルな構造 氏名:大石 会社:ドッグラン 名前と値のペア {"name":"oec", "com":"dogrun"} ペア ペア カンマ 配列 [ {"name":"oec", "com":"dogrun"}, {"name":"hebishima", "com":"ziro"} ] 括弧で囲むことで、配列として 扱えるようになる。 レコードの区切りはこちらでも カンマを使用する。

他にどんなAjax関数があるの? ■引数のちょっとした説明 url --- AjaxでアクセスするページのURL ajax(options) プロはこっちを使うらしいです。次で説明します。 load( url, data, callback ) urlのページを読み込みこむ。 “url #id > セレクタ”のような指定が可能。 get( url, data, callback ) 前述したとおりです。 getJSON( url, data, callback ) getScript( url, callback ) javaScriptファイルを読み込んで実行する。 post( url, data, callback, type ) Postでページデータを取得する。Typeは送信するデータ形式を指定する。(JSON,XMLなど) ■引数のちょっとした説明  url  --- AjaxでアクセスするページのURL  data --- ローカルから送信するデータ。キーと値の組み合わせをjson形式 で指定。 callback --- Ajax通信が成功された際に実行されるjavaScript関数

ajax(option) なぜプロ仕様なのか?  なぜプロ仕様なのか?  $.getや$.postは実装の容易さと引き換えにエラー時のコールバック関数の指定が出来ない。  $.ajaxはオプションでerror を指定することで、エラー時の処理を指定することができる。  認証が必要なURLにアクセスする場合に、username、passwordの指定ができる。  AJAXによりリクエストが送信される直前に実行する処理を指定することができる。Falseを返せば、リクエスト送信をキャンセルすることが可能。 詳しくはこちら

更に実用的なのを HTMLファイル(index3.html - jQuery部) <script src="jquery-1.4.4.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function(){ $("#ajax_go").click(function(){ $.get("index3.php", function(json){ $("#output table").remove(); $("#output").append('<table border=1>'); for(var i=0; i<json.length; i++){ if($("#select option:selected").val() == json[i].name || $("#select option:selected").val() == ""){ $("#output table").append("<tr><td>" + json[i].name + "</td><td>" + json[i].com + "</td></tr>"); } }, "json"); }); </script> ・・・ ajax_go ボタンが押されたら ・・・ ajaxのgetでindex3.phpのjsonデータを取得 ・・・ div=outputタグ内のテーブルを削除 ・・・ div=outputタグ内にテーブルを挿入 ・・・ jsonデータの配列分ループを行う ・・・ セレクトボックスで選択した値が空、またはループ中のjsonのnameが一致したら    jsonのnameとcomの2列の情報をテーブル行として出力。

更に実用的なのを HTMLファイル(index3.html - body部) セレクトボックス ボタン テーブル出力部 <select id="select" > <option value="">全部</option> <option value="oec">大石さん</option> <option value="hebishima">蛇島さん</option> </select> <input type="button" id="ajax_go" name="ajax_go" value="AJAX実行" /> <div id="output" /> </body> セレクトボックス ボタン テーブル出力部

更に実用的なのを PHPファイル(index3.php) <?php echo <<< DOC_END [ {"name":"oec", "com":"dogrun"}, {"name":"hebishima", "com":"ziro"}, {"name":"fujita", "com":"justplayer"} ] DOC_END; ?>

更に実用的なのを セレクトボックスを選択し、実行ボタンを押すと対象者のデータがテーブルに表示されます。

まとめ  今回はPHPファイル側は決まったデータを出力していただけですが、実運用ではDBからレコードを取得して、それをjsonやXML形式に変換して出力するような処理になるかと思います。  今回はやりませんでしたが、ローカル側からget値やpost値を送信することも可能です。PHPであれば$_POST[‘hoge’]等で受け取って、それを元に値を返したりDBに登録したりする処理も可能です。  大石さん、頑張ってください。 ご清聴、ありがとうございました。

おまけ Sencha Touch と jQueryMobileについて jQuery mobileデモ : http://jquerymobile.com/demos/1.0a2/ Sencha Touchデモ : http://dev.sencha.com/deploy/touch/examples/kitchensink/ Sencha Touchの 嬉しいニュース    : http://www.extjs.co.jp/blog/2010/11/15/sencha-touch-1-0-ships-now-free/