質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
XML

XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

4147閲覧

JavaScriptで外部からxmlを取得して操作する方法

pegy

総合スコア243

XML

XMLは仕様の1つで、マークアップ言語群を構築するために使われています。

JSON

JSON(JavaScript Object Notation)は軽量なデータ記述言語の1つである。構文はJavaScriptをベースとしていますが、JavaScriptに限定されたものではなく、様々なソフトウェアやプログラミング言語間におけるデータの受け渡しが行えるように設計されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2018/01/28 08:33

駅データ.jpという無償サービスを使用したいと考えているのですが、
うまくこれを操作することができません。

APIをそのまま利用すればと言うご意見をいただくと思うのですが、
少しカスタムをしたいため、無料API上取得するXMLデータをこちらで取得したいと考えておリます。

駅データ.jp
▶︎会員しか見れなければすみません。。。
外部XMLファイル
▶︎本外部ファイルはAPIで提供されているので、誰でも見れると思います。

この外部XMLファイルを
var src="http://www.ekidata.jp/api/p/13.json";
で取得する所まではできました。

Javascript

1<div data-value="13">東京</div> 2 3$(function(){ 4$('.todofuken').on('click',function(){ 5 var code =$(this).data('value'); 6 var src = "http://www.ekidata.jp/api/p/" + code + ".json"; 7console.log(src); 8)} 9)}

ここから外部XMLファイルのxml.dataのオブジェクトを操作したいのですがXMLをloadして配列を操作する方法がわかりません。

つまり、XMLをロードして
{"line_cd":11301,"line_name":"JR東海道本線(東京~熱海)"}と言った組み合わせをすべて取得したいのですが、JSに未だ未だ不慣れでXMLをloadする所からつまづいている状況です。

もし、参考になるサイト等でも結構ですので、お力ぞれをいただければとても嬉しいです。

よろしくお願い申し上げます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2018/01/28 08:45

タイトルや本文で「XML」と書かれていますが、提示されているのは「JSON」です。内容からJSONで十分問題ないと思われますので、質問を書き換えることをお勧めします。
think49

2018/01/28 09:02

実はJSONでもXMLでもなく、単純なjsファイルです。JSONPでもありませんでした。
guest

回答1

0

ベストアンサー

参考になるサイトは既に揃っています。

http://www.ekidata.jp/api/p/13.json

拡張子こそjsonですが、実体はJavaScriptコードであり、グローバル変数 xml が定義されています。

http://www.ekidata.jp/api/sample_drilldown.php

こちらのサンプルコードと同じようにscript要素で読み込み、グローバル変数 xml を参照すれば良いでしょう。

Re: pegy さん

投稿2018/01/28 09:00

think49

総合スコア18164

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

pegy

2018/01/28 14:03

ご回答いただき、ありがとうございます。 なぜ、サンプルではscriptタグをappendしているのか全く、解明できなかったのですが、単純に '<script type="text/javascript" charset="UTF-8" src="'+var+'" ></script>' を動的に生成して、scriptとして読み込むからくりだったのですね! アドバイスを頂戴できてよかったです。無事、必要なデータを取得することができました。 心より、感謝を申し上げます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問