- OpenLaszlo紹介
- プログラム構造関連
- スクリプト
- Javascript基礎
- 基礎知識
- ビュー<view>
- レイアウト
- 動かす
- 入力デバイス
- 文字
- 数値
- 日付
- オブジェクト指向
- 標準コンポーネント
- データの扱い
- データ操作(基礎)
- 応用編
–
Webサービスのうち、OpenLaszloで対応していないJSONで返してくる場合があります。
例えばGoogle AJAX Language API(翻訳API)。
この場合Oliver Steele氏のJSON for OpenLaszloを使うとJSONデータを取り扱うことができます。リリースは2006年でバージョンも1.0と古いままですがテストした限りは問題なく使えています。
JSON for OpenLaszloは、公式サイトのhttp://osteele.com/sources/openlaszlo/json/からダウンロードするか、http://www.openlaszlo-ason.com/DEMO/openlaszlo-json-1.0.zipをダウンロードしてください。サンプルコードの1行目にあるようにjson.hsを読み込みます。するとJSON.parse()などの関数が使えるようになります。その他の関数や使い方などはjson.jsを見てください。
(OpenLaszlo4.9.0/swf8)
<canvas proxied="false"> <script src="json.js"/> <dataset name="ds" request="true" type="http" src="${'http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=' + query.text + '&langpair=ja%7Cen'}" > <handler name="ondata"> var data = "[" + this.getPointer().xpathQuery("ds:/text()") + "]"; var json = JSON.parse(data); t.setAttribute('text',json[0]['responseData']['translatedText']); </handler> </dataset> <simplelayout spaacing="10"/> <edittext id="query" width="300">こんにちは。お元気ですか? 今日はいい天気です。</edittext> <button onclick="ds.doRequest()">翻訳(日本語→英語)</button> <text id="t" fgcolor="red"/> </canvas>
▼単に文字列置換でごまかしたバージョンはこちら
http://www.openlaszlo-ason.com/doku.php/translate