dojoオブジェクトの基本(後編)
沖林正紀
2008/01/18 15:11
今回はJSONとAjaxに関わるdojoオブジェクトを紹介しよう。
前2回でdojoオブジェクトのさまざまなメソッドを紹介してきた。今回はその最後として、JSONとAjaxに関するものを紹介したい。
fromJson
fromJson:JSON形式の文字列からオブジェクトを生成。生成できないときは文字列をそのまま返す。
var obj = dojo.fromJson( '{ building : { area : "東京都港区", name : '
+ '["六本木ヒルズ", "東京ミッドタウン"] } }' );
document.write( obj.building.area ); // "東京都港区"
document.write( obj.building.name[0] ); // "六本木ヒルズ"
toJson
toJson:オブジェクトをJSON形式の文字列に変換する。
var json = dojo.toJson( obj, true );
// trueは文字列をタブ(¥t)でインデントすることを表す(省略可能)
インデントの例
{
"building": {
"area": "東京都港区",
"name": [
"六本木ヒルズ",
"東京ミッドタウン"
]
}
}
formToJson
formToJson:フォーム(<form>)で入力・選択された内容をJSON形式の文字列に生成。複数選択が可能な項目は、選択された要素の配列が値となる。ボタン(画像含む)、アップロードするファイルの名称、使用不可(disable)の要素は含まない。
下記は<form id="search">のフォームから入力された内容をJSON形式の文字列に生成する例。
var json = dojo.formToJson( 'search', true ); // trueは文字列をタブ(¥t)でインデントすることを表す(省略可能)
図1 フォームに入力した内容
リスト1 図1のフォーム(HTML抜粋)
<form id="search" action="javascript:void(0);"><fieldset>
<legend>検索フォーム</legend>
キーワード<input type="text" name="keyword" size="50" /><br />
すべて<input type="radio" name="allwords" value="true" checked="checked" />
いずれか<input type="radio" name="allwords" value="false" /><br />
表示項目
タイトル<input type="checkbox" name="items" value="title" checked="checked" />
説明<input type="checkbox" name="items" value="desc" /><br />
件数<select name="results">
<option value="10" selected="selected">10件</option>
<option value="10">20件</option>
</select>
内容<select name="content" size="2" multiple="multiple">
<option value="summary" selected="selected">概要</option>
<option value="detail">詳細</option>
</select><br />
<input type="submit" value="検索する" />
<input type="reset" value="クリア" />
</fieldset></form>
変数jsonに代入される文字列(インデント後)
{
"keyword": "JavaScriptライブラリ dojo",
"allwords": "true",
"items": [
"title",
"desc"
],
"results": "20",
"content": [
"summary",
"detail"
]
}
- 2人の推薦記事
- 0人がクリップ
-
ソーシャルブックマーク(-)
- トラックバック(0)
- 特集: dojoの広大な門をたたく (8件)
- 今日のトップ記事
- 昨日
- 5日前
- 6日前
- 7日前
- ホワイトペーパー
- 話題のタグ
OS
インストール
CSS
リファレンス
Firefox 3
HTML
プログラミング言語
Webデザイン
開発環境
Database
クラウド
iPhone 3G
Opera
オープンソース
アプリケーション
Windows
Google
仮想化
セキュリティ
Apple
Chrome
Windows 7
Java
データベース
Windows XP
Mac OS X
小技
JavaScript
Firefox
Windows Vista
ブラウザ
脆弱性
ソフトウェア開発
Webサービス
Tips
iPhone
RIA
WebKit
Off Topic
Flash
iPod touch
モバイル
Linux
Internet Explorer
Microsoft
Mozilla
Safari
マイクロソフト
UI
Ajax
話題のタグを見る »
「Google Chrome」の拡張機能、開発者からのアップロード受付を開始
IMAPでGmailを受信、最も手っ取り早いのは?Windows 7、Ubuntu 9.10、Snow Leopardのメーラー比較
Snow LeopardではNTFSをサポート--その源流を訪ねる(2)
MS運営のオープンソース開発プロジェクト支援サイト「CodePlex」を探検する(2)
Snow LeopardではNTFSをサポート--その源流を訪ねる(1)
フォトレポート:「Windows Server 2008 R2」--あまり知られていない有用な機能10選
電力に"ふた"をする独自の省エネ機能とは!?
100万円で実現!中小企業の情報漏えい対策
【最終警告】パンデミック対策特集
―エン・ジャパン厳選求人☆毎週更新―
大丈夫?あなたの会社のセキュリティ対策
高まるiSCSIストレージへの注目度
企業ITシステムの企画、構築、運用のイロハ