• 締切済み

ActionScript JSON

FLASHのActionScriptから、JSONデータを読み込んで、表示をさせたいのですが、 やり方が分かりません。よろしくお願いします。 JSONにより出力されたデータで、例えば  {001:apple}があった場合、 FLASH上のインプットフィールド上にに001を入力すると、別インプットフィールド上にappleが表示されるようにしたいのですが、方法はありますか? よろしくお願いします。

  • Flash
  • 回答数1
  • ありがとう数1

みんなの回答

  • anyhelp
  • ベストアンサー率43% (79/180)
回答No.1

まず、大事な前提として以下の説明はすべてstageで記述して行っているとします。 JSONを読み込んだ時strにロードした文字列が入っている場合を考えると var str:String = '{"001":"Apple"}'; とおなじですね。 JSON文字列をObject型に変換は var obj:Object = JSON.decode(str); とします。 objはドットでプロパティ参照できます。 trace(obj.001)とすると、本来、"Apple"と出力されるはずです。 しかし、変数は頭文字を数字にすることが出来ないのでobj.001という書き方は文法エラーになります。 こういう問題は事前に防ぐ事が出来、 var str:String = '{"name001":"Apple"}'; というようなネーミングにしておくことです。 そうすると obj.name001で本来の中身のデータ"Apple"を取り出せます。 このデータをテキストフィールドに表示させるには 画面上(stage)にstatusというインスタンス名のTextFieldがあったとすると status.text = obj.name001; とします。 次に、別のインプット用のTextFieldのtypeというインスタンス名があったとします。 このTextFieldにname001とタイピングし、別のボタンをおすと出る様にしてみます。 説明を簡単にするために画面にボタンがあり、それを押すと下の関数がよびだされるようにしておいたとします。 function output():void { status.text = obj[type.text]; } これでtypeにname001とかいて、ボタンを押すと、statusというTextFieldに出力されます。

spider32
質問者

お礼

ありがとうございます。大変参考になりました。

spider32
質問者

補足

すみません。当方ActionScriptの知識がほとんど無く、 分かりませんでした。 現在cgi内のjavascriptでJSONデータを読み込んで活用しています。 大元のcgiファイルのinputフィールドに記入した文字を自動でjavascriptにより別cgi送信し、JSONデータを出力します。送信した文字にマッチしたJSONデータを大元cgiの別のフィールドに表示する仕組みです。 フィールドに記入した文字を一度SQLサーバーに送信し、送信された文字を条件としてJSONデータを出力して、再度読み込む流れです。 これをFLASH内でできないかと考えています。 何かこれを実現している解説サイトなどが無いかと探していますが見つかりません。 もしよろしかったらご教授いただければと思います。 よろしくお願いします。

関連するQ&A

  • JSON input 一覧表示

    恐れ入ります。 MySQLから、JSON形式で出力された別ファイルのデータを、 javascript にて、input フィールドに記入されたワードにマッチしたデータを一覧表示させる方法を探しています。Googleの検索のように、表示したいのです。 よろしくお願いします。

  • PERL Ajax JSON 付随情報

    恐れ入ります。 perl 上でJSON出力された情報を、 別ファイルのinput フィールド上に付随情報を表示したいのですが、苦戦しています。 例)Mysql上に以下のデータがあり、 0001|花|ガーベラ 0002|酒 | ビール 0003|菓子|ピーナッツ {"pro_code":"0001",bunrui":"花","pro_name":"ガーベラ"}, {"pro_code":"0002",bunrui":"酒","pro_name":"ビール"}, {"pro_code":"0004",bunrui":"菓子","pro_name":"ピーナッツ"} と、JSONにより出力したデータを、 別ファイルから読み込み、 input フィールドに0001を入力すると、別フィールドに花、ガーベラと表示されるイメージです。 よろしくお願いします。

  • ActionScript3.0にて質問になります。

    ActionScript3.0にて質問になります。 testfieldクラスにて、TestFieldType.INPUTを指定して、入力可能なテキストフィールドを作成し、入力する文字のサイズを大きくしたいのですが、TextFormat.sizeを指定しても、文字サイズがデフォルトサイズから変化ありません。 別の方法があるのでしょうか? よろしくお願い致します。

    • ベストアンサー
    • Flash
  • javaを使い、jsonデータを取得したい。

    Apple iTunes Store RSSのjson形式データを、 javaを使い取得し、取得した情報を表示させたいのですが、 試行錯誤しましたが、未だ取得・表示出来ませんでした。 ・Apple iTunes Store RSS https://rss.itunes.apple.com/jp/ ソング トップ10のjsonデータ URLの末尾にxmlをjsonに入力。 https://itunes.apple.com/jp/rss/topsongs/limit=10/json また、取得の際に、gsonを使いたいと思います。 javaのソースでgsonを使い、上記itunesの情報(音楽アーティスト名、曲名、発売日、URLリンク先)を取得可能なソースを教えて頂きたいと思います。 ご教授、宜しくお願い致します。

  • actionscript アルファベットを数値に変換できる?

    Flash Actionscriptの開発で困ってます。 テキストフィールド1とテキストフィールド2があります。それぞれのフィールドに入力されたアルファベットを数値に変換(例えばAと入力されたら1、Bなら2、Cなら3)して、A+B=3のように足し算して返すにはどうしたらよいでしょうか?? こういうのを覆面算?っていうんでしょうか。

    • ベストアンサー
    • Flash
  • ActionScriptとphpの連携について

    ActionScriptとphpの連携について質問があります ActionScriptで受け取った値をphpに送り、その値をphp(htmlに埋め込み)で表示させたいと考えています。 動作としましては、 ・あらかじめテキストボックスに文字列が入力されている ・ボタンをクリックする ・別ウィンドウが出現(getURLでphpファイルを表示)テキストボックスに入力されていた文字列が表示される ・phpのファイルでラジオボタンで項目を選択し送信ボタンを押す ・MySQLに接続、ActionScriptで受け取った値とラジオボタンで受け取った値をまとめてデータベースに保存 というものにしたいです。 ボタンをクリックするまではすべてFlashで実現させています。 Flash→php→Flashという流れで値を表示させる方法はわかるのですが、Flash→phpで表示させることは可能でしょうか もし可能であれば、どのように実現したらよろしいでしょうか 現在はLoadVarsクラスのLoadVars.sendAndLoad()を使っています ActionScriptは2.0です 至らないところもございますが、素早い回答をお願いいたします

    • ベストアンサー
    • Flash
  • php5.16でjsonを使うには?

    http://www.dezinerfolio.com/dfgallery-2/free-flash-gallery こちらのFlashギャラリーを使用したくて苦戦しています。 サイトではphp5+と説明されているのですが、json関数を使用できないとうまくデータのやり取りができないようです。 なんとかphp5.16の環境でjsonを使えるように試しているのですが、 http://www123.ddo.jp/extwiki/?2.0%2Fjson_encode%E9%96%A2%E6%95%B0 という、json encodeを試してみてもだめでした。 これはphp4.xでjsonを使用する為のものみたいです。 php5.16でjson encodeを使用できるようなうまい方法はないでしょうか? よろしくお願い致します。

    • 締切済み
    • PHP
  • actionscript の記述

    ホームページを制作中です。 同サイズの、それぞれにリンク(getURL)をactionscriptで指定してあるフラッシュがいくつかあります。ページ上の表示場所は同じで、そのフラッシュが順次表示される、というものをactionscriptで記述したいと思っているのですが、方法がわかりません。 お分かりになる方、教えていただけませんか? 宜しくです。

  • $.getJSONにJSON.stringifyを

    $.getJSONに、JSON.stringifyした結果を指定したいのですが、どうすればよいでしょうか? ■現状 ・コンソールにJSONは出力されているのですが、$.getJSONでこのファイルを指定しても、画面真っ白です ▼index.html <script type="text/javascript" src="hoge.json"></script> <script type="text/javascript"> $.getJSON('hoge.json', function(data) { ▼hoge.json var obj =([ [略], ]); var json_text = JSON.stringify(obj); // テスト出力 console.log(json_text); ■質問 ・$.getJSONにこの出力結果(json_text)を指定するためには、どうすれば良いでしょうか? ・一旦ファイル出力しなければいけないのでしょうか? ・どうやるのでしょうか? ・AJAXでサーバ側へデータを渡してファイル出力した後、$.getJSONでその出力したファイルを指定するしかない?

  • ActionScript For文を使っての方法

    ActionScript3.0の質問です。 JSONのデータを読み込んでテキストレイヤーに表示しているのですが、行数の関係上、JSONの配列内にある "aaaa":"表示されるテキスト" が15を超えると、複数行での表示ができなくなります 今回、for文を使って、一定数(15個)を超えたら、新たな配列を作り、テキストレイヤーに表示できるようにしたいと思っています。 ぜひ、詳しい方、アクションスクリプト(構文)を教えてください。 よろしくお願いします。