jQuery ajaxForm pluginを 使って 見よう
jQuery増えた 本当 最高だ.
どうな 人々は jQueryを 派手な アニメーション 效果を 竝び 数 ある ライブラリと 思う 指導 分からない. 何, 違った 言葉は なくて, 初めに そうに jQueryに 沸き返える のも 悪い 仕事は ない. しかし jQueryで アニメーションが 占める のは 阿洲 少ないと 私は 思う.
私が 管理する サイトも jQueryを 使って あるが, アニメーション 效果は ほとんど 使うの ない. 速度が 重要な サイトで 派手な UI増えた オプションであって 咲く事が ない. どうすれば 派手な UI増えた フラッシュが もっと 寝る 提供する 首都 ある.
内 考えに jQuery義 仮装(家長) 力強い 部分は ところで 各種 HTML 要素たちを とても 易しくて 自由自在で 使う 数 あるように 日 与える 部分だ.
何, jQueryに 大海は これ 位だけ 言って, ajaxForm
これ 何やらから 分かって 見よう.
form
を ajax
路 処理する 蟹 楽だという 考えを 開発者なら たいてい 度 思って 見た 法する.
ところが ajaxForm plugin
銀 これを ワンパンに 処理して 与える. 次 コードを 見よう.
<form action="destination.php" enctype="multipart/form-data" method="post" name="myForm" id="myForm" > <label for="myInput">入力してください : </label><input type="text" name="myInput" id="myInput"> <label for="myFile">ファイル選択 : </label><input type="file" name="myFile" id="myFile"> <input type="submit" value="確認"> </form>
上の 例示では enctypeを multipart/form-data路 したが, はなはだしくは ファイル送信まで ワンパンに 解決する 数 あるという のを 見えて 準 のであって, 必ず あのように オプションを 与えると するという 意味は ない. enctypeを 設定するの なくて, ファイル送信 なく 使っても 寝る 作動する.
上 フォームが ある 文書で javascript コードで head 部分に 下のように 使って 与える のだけで ajax 処理が 完璧に なる.
$(function(){ $('#myForm').ajaxForm(); });
こんなに 使えば action
値段と method
を form
に 指定された 大道 使うように なる. submit
ボタン 押せば ajax
処理が なる.
本当 最高だ ;;
もっと 具体的な API増えた 当たり前が ajaxForm
plugin義 APIを 見れば なる.
ajax
回答を 受けた 後 処理を 入れようとすれば?
回答 受けた 後 処理を 入れる のも 簡単だ.
下の コードを 見よう.
$(function(){ $('#myForm').ajaxForm({ success: function(data){ alert(data); } }); });
上と ような コードを 使えば, 回答受けた メッセージを alert
で 浮かべるように なる. 本当 最高だ.
回答受けた 後 フォームを 操作しようとすれば
$(function(){ $('#myForm').ajaxForm({ success: function(responseText, statusText, xhr, $form){ alert(responseText); $form.css('background','red'); } }); });
上 コードを 参考すれば 分かるが, success
オプション 項目に 入れる function
に はい 番目 因子値で $form
という 遊ぶことを 設定する. (分かるが 因子値の 名前は 誰か 使えば なる. $form
で 中 して asdf
路 しても なるという ことだ.) それが ところで 元々 フォームの jQuery 客体だ. これを 土台で 操作を 加えれば なる.
オプション 構造
オプションの 構造を こっそり 説明しよう.ajaxForm
中には json
object
を 因子値で 入れる 数 ある のだ. jQuery 自体だけ なく ほとんど あらゆる jQuery プラグインで こういう 式で オプションを 入れる.
分かるが javascript
義 object
構造は 下のように 使う.(基本的に これは json
構造だ.)
{ beforeSubmit: function(){ alert('ソブミッ 直前です!'); }, success: function(){ alert('送信 成功!'); } }
凡そ 何やら 理解が いらっしゃるのか.
そのため 下と ような コードで 活用する 首都 ある.
var option = { beforeSubmit : function() { alert('ソブミッ 直前です!'); }, success : function() { alert('送信 成功!'); } }; $('#myForm').ajaxForm(option);
凡そ 理解が いらっしゃったであろう 思う.
javascript
義 こういう 構造に 対して 私は 《プログラミング jQuery》の 付録を 報告 多く 学んだ. これ 本は 強力お勧めだから 図書館で 借りて 見ても 死 見ても jQueryを 勉強しようとする 考えが ある 人は 必ず たいてい 番(回) 表示 望む.
ヨトン, これ 位なら 凡そ 使う やけどする 無理が ない のだと 思うのに, もし もうちょっと 分かるのを 望んだら jQuery ajaxForm
plugin サイトの option タップを 見れば なる.
dataType オプション
option
中 分かって 頭面 良い のは dataType
オプションなのに, 説明が 下のように なって ある. 不足な 英語実力だが 凡そ 翻訳して 見る.
dataType
回答受ける data type.
null
, ‘xml
‘, ‘script
‘, ‘json
‘ 中 一つを 使えば なる.dataType
銀 サーバーで 受けた 回答を どうに 処理する 地 知らせて 与える 役目を する. これ オプションはjQuery.httpData
メソッドに 直接 マッピングされる.(これは 何 言葉なのか 分からない. マッピング(maps)なるという 蟹 正確に 何を 意味するかも 分からなくて,httpData
メソッドは jQuery 基本 メソッドが ない ようなのにjQuery.httpData
と 使って おいたから. やっぱり 英語実力 不足か… OTL;;) 次 値段を 支援する.‘
xml
‘: もしdataType
== ‘xml
‘ 裏面 サーバーの 回答はxml
路 取り扱いされる. もし ‘success
‘ コールバック メソッドが 指定されて あったらresponseXML
値段を 伝達受けるように なる のだ.‘
json
‘: もしdataType
== ‘json
‘ 裏面 サーバー 回答が 成功した ので 評価された ので, もし 指定されて あったら コールバック メソッドも 実行される のだ.(ifdataType == 'json'
the server response will be evaluted and passed to the ‘success
‘ callback, if specified _ これ 翻訳 難しい;; 当たるように 翻訳したのか 分からなさ.)‘
script
‘: もしdataType == 'script'
裏面, サーバー 回答は global context(載せるように 何やら 分からない. 日 見れば 分かるの.)路 取り扱いされる のだ.[
dataType
を 設定するの なかった 時の] 基本値:null
ホックホック;; 訳もなく 翻訳を 試みた の ようだ. とにかく, 上で dataType
義 変数で 入って行く 値段たちは 引用符で 取り囲まれた 文字列値だと するという 事実を 忘れるの なかったら する.
残りは 本当に, API 参照して 寝る 夏期 望む. 私も もっと 使って 見るように なれば もっと 使う. 以上.
気を付ける 点
[ドッ] dataType
を json
で 設定したら, 気を付ける 蟹 ある. 例えば
{result: 1, msg: "成功!"}
こういう 式で 使えば 中 なる. json銀 key値段も 引用符を 付けると 夏期 だからだ. 上のように 回答を 与えるように 使って dataType
を json
で 使えば 処理が 失敗した ので ガンズドエ 誰 一刀 中 起きる,
{"result": 1, "msg": "成功!"}
こんなに 使うと json
で 認識する. 絶対に これ だから シャベルですくい出すの 末子.
もし PHPを 使ったら, 配列を 作った 次 下の コードのように json_encode 関数を 使えば なる.
$arr = array('a'=>'エイ', 'b'=>'雨'); echo json_encode($arr);
[ドッ2] 回答が 何も なければ 誰 一刀 中 起きる.(すなわち, success
に function
を 入れて おいても 作動するの ない.) テストする 時 回答する 方 ファイルに 何でも 出力するように して テストを すると する.
[2012-02-21 追加] validate プラグインと 同時に 使おうとすれば beforeSubmit
オプションを 使う.
- コメント機能はありません。コメントの代わりに[email protected]
にメールを送ってください。