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

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

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

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

1321閲覧

htmlからcsvを読み込んでjavascriptで処理した後アラートを出したい

A111

総合スコア13

CSV

CSV(Comma-Separated Values)はコンマで区切られた明白なテキスト値のリストです。もしくは、そのフォーマットでひとつ以上のリストを含むファイルを指します。

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/10/10 02:20

##HTMLで読み込んだcsvファイルをXMLHttpRequestを用いてJavaScriptで取得しデータをalartで表示したいです.

様々なサイトで調べ書いたのですがalartがundefineになってしまい原因が分からず困っています.
改善すべき点をお教えいただけますと幸いです.

以下ソースコード(関係のある部分のみを抜粋)

html

1<form> 2<input type="file" class="dropify" id ="output_csv" name="file"> 3</form> 4<input type="button" value="HTTP Request" onclick="getCSV();"/>

js

1function getCSV(){ 2 var req = new XMLHttpRequest(); 3 req.open("get", "sample.csv", true); 4 req.send(null); 5 6 7 req.onload = function(){ 8convertCSVtoArray(req.responseText); 9 } 10} 11 12 13function convertCSVtoArray(str){ 14 var result = []; 15 var tmp = str.split("\n"); 16 17 for(var i=0;i<tmp.length;++i){ 18 result[i] = tmp[i].split(','); 19 } 20 21 alert(result[1][2]); 22} 23 24getCSV();

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

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

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

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

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

退会済みユーザー

退会済みユーザー

2020/10/10 02:30

要求・応答が期待通りか Fiddler などのキャプチャツールを使って調べてその結果を書いてください。そういう切り分け作業は、質問する前に質問者さんがやるべきことです。
firegrape

2020/10/10 02:33

req.statusは200ですか?
m.ts10806

2020/10/10 02:38 編集

コードは間違っていませんが、質問本文は間違っています。(こういうところは気にした方が良いです) alart
guest

回答2

0

ベストアンサー

javascript

1<script> 2window.addEventListener('DOMContentLoaded', ()=>{ 3 const convertCSVtoArray=(str)=>{ 4 const result = []; 5 const tmp = str.split("\n"); 6 for(var i=0;i<tmp.length;++i){ 7 result[i] = tmp[i].split(','); 8 } 9 return result; 10 } 11 document.querySelector('#btn').addEventListener('click', ()=>{ 12 const url="sample.csv"; 13 fetch(url).then(res=>res.text()).then(txt=>console.log(convertCSVtoArray(txt)[1][2])); 14 }); 15}); 16 17</script> 18<input type="button" id="btn" value="HTTP Request">

投稿2020/10/10 03:45

yambejp

総合スコア116734

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

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

A111

2020/10/10 04:10

ご回答いただきありがとうございます 具体的な方法をご提示いただいた上で解決に導いてくださり感謝しております.
guest

0

元csvが意図通り読み込めてるかという点が気になりますが、一旦
alert(tmp[i].split(','));
にしてみてはどうでしょうか。アラートを出すのが目的ならこれでもいいはずです。

投稿2020/10/10 02:39

yasutakatou

総合スコア446

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

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

A111

2020/10/10 04:12

ご回答いただきありがとうございます 参考にさせていただきます. また具体的なアドバイスをいただいたことも感謝しております.
yasutakatou

2020/10/10 04:16

いえいえ。他の方のコードで解決したみたいでよかったですね!
A111

2020/10/10 04:36

ありがとうございました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問