
javascriptでCSVデータをを呼出して、あるinputに入力したデータでCSVをvlookupし、該当した行のある列を別のinputに書くということがしたいです。
こちらの記事はテーブルを参照していますが、
http://oshiete.goo.ne.jp/qa/6750899.html
外部CSVデータを直接読むコードはないでしょうか。
どうか助けてください。
よろしくお願いします。
A 回答 (6件)
- 最新から表示
- 回答順に表示
No.6
- 回答日時:
ていせい。
ひどうきではないので Ajax とよばれない。
test.csv
001 (\t) abc (\t) 400 (\r\n)
002 (\t) def (\t) 500 (\r\n)
のように。
もじコードも、きをつけてね
No.5
- 回答日時:
<!DOCTYPE html>
<title>VLOOKUP modoki のさんぷるぷる & なにかしら</title>
<body>
<form action="#" onsubmit="return false">
<table>
<tr>
<td>
<input type="text" id="hoge0" name="hoge0" onchange="
document.getElementById('hoge1').value=VLOOKUP(this.value, 0, 1);
document.getElementById('hoge2').value=VLOOKUP(this.value, 0, 2);
">
<td>
<input type="text" id="hoge1" name="hoge1">
<td>
<input type="text" id="hoge2" name="hoge2">
</table>
</form>
<script>
(function () {
var reg_field = /\t/g;
function getFile (fName) {
var req;
try {
req = new XMLHttpRequest;
} catch (er) {
return '';
}
req.open ('GET', fName, false);
req.send ('');
return (200 === req.status)
? req.responseText
: '';
}
function toAry (csv) {
return (csv)
? csv.split (/\r\n|\r|\n/g)
.map (spliter)
: [];
}
function spliter (rec) {
return rec.split (reg_field);
}
this.createVLookUp = function (fname) {
var csv = [];
if (fname)
csv = toAry (getFile (fname));
return function (key, search, row) {
var i;
var I = csv.length;
for (i = 0; i < I; i++)
if (csv[i][search] == key)
return csv[i][row];
return '';
};
};
})();
var VLOOKUP = createVLookUp ('test.csv');
</script>
--
ふぃーるどのくぎりは、タブコード。
だぶるくおーととか、しんぐるくおーとはつかわないで
ひどうきなので Ajax とよばれないらしい
じつようには、ほどとおい。
ふぁいあ~ふぉっくすとか、くろむならうごくかな?
test.csv
001abc400
002def500
003ghi600
No.4
- 回答日時:
手前味噌ですが、rfc4180.js というライブラリがあります。
http://vird2002.s8.xrea.com/javascript/rfc4180.h …
http://www.kasai.fm/wiki/rfc4180jp を読みながら、JavaScript で CSV -> array の変換器を実装しました。
二次元配列になるので for 文で回せば vlookup も可能です。
# 改めて読むと、CSV -> array の変換部だけ別コードにした方が良かったかなー。(以前、指摘を受けたところ)
No.2
- 回答日時:
う~ん。
CSVファイルをAjaxのレスポンスとして入手して自前で解析して自分でvlookupの動作を作るというのであればそれはできると思うんだけど、いろいろ試行錯誤が必要かもしれないね。まず、Ajaxについては、私はjQueryというJavascriptライブラリーがとても好き(というかこれしか知らない)。jQueryでAjaxをするのはすごく簡単で、jQueryを読み込んだら後はjQuery.get()やjQuery.post()というメソッドを実行するだけだ。
で、jQuery.post()でCSVファイルをリクエストすれば、成功時にコールバック関数が受け取るのはそのまんまCSVファイルの中身だ。
これで「外部CSVデータを直接読む」という事は実現できる。後はvlookup的動作だが、これは技術的にむつかしい話ではないので特に解説は必要ないだろう。
外部CSVがクライアントのパソコンのCドライブ直下のtest.csvとかだと・・・・jQueryで読み込むパスの指定をどうすればいいのか、難しそうだね(パスが決まっているのであれば読み込み可能)。
ローカルファイルを読むのにJavascript File APIというものもあるにはあるけど、現時点ではまだまだ現実的とは言い難い。
>>>> これで「外部CSVデータを直接読む」という事は実現できる。後はvlookup的動作だが、これは技術的にむつかしい話ではないので特に解説は必要ないだろう。
この部分がネット上でなかなか見つからないのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(プログラミング・Web制作) pythonのpandasのcsvの外部結合(outer_join)した際に列が想定とは異なる事象 1 2022/05/25 13:23
- Visual Basic(VBA) マクロを教えてください。 7 2023/06/01 19:47
- その他(プログラミング・Web制作) python 気象データの取得 2 2023/06/20 23:54
- Excel(エクセル) エクセルのVBAについて とあるサイトのコードを参考に、CSVの文字化けを直すVBAを作成しているの 7 2022/11/04 14:15
- PHP htmlで複数の個数入力欄を表示させるには 1 2022/09/20 03:11
- Excel(エクセル) PowerQueryに詳しい方教えてください(Office365) 1 2022/07/24 21:11
- その他(プログラミング・Web制作) データ解析ソフトRでのファイル入力read.csvがエラーになります 7 2022/03/27 22:11
- Excel(エクセル) csvに別のExcelの文章を差し込む 2 2023/04/01 16:06
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) CSVファイルがカンマ区切りにならない。対処法を教えていただきたいです。 仕事でSMS一斉送信ができ 2 2022/07/01 21:24
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ActiveXobjectが作成できない
-
<a>タグのテキストを取得
-
javascriptで編集可能不可能の...
-
DIV内のDIV要素を移動する。
-
HTML:Tableタグに対し、JavaScr...
-
onchangeイベントを使ってspan...
-
C#テキストボックスの文字を配...
-
window.openでタイトル名の指定
-
javascriptでiframeのURL変更は?
-
Matlabで自作関数をオーバーロード
-
C#OpenCv V4にのエラーに関する...
-
jspからjavascriptの変数引継ぎ
-
【Jquery】changeイベント毎にa...
-
C#で、ContextMenuStripに動的...
-
GASでundefinedエラーが出ます
-
ASP.NET MVCでObjectをjsに渡す
-
idを使わずにonclickで自身の要...
-
テトリス / 配列をブロックに...
-
投稿画像の確認画面
-
同じIDで定義した要素の配列を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<a>タグのテキストを取得
-
ActiveXobjectが作成できない
-
innerHTML実行後のイベント
-
onchangeイベントを使ってspan...
-
javascriptで編集可能不可能の...
-
javascript 特定のタグのidの存...
-
javascriptでスロットゲームを...
-
任意の座標をクリックさせるには
-
クリックを押した時にリンク先...
-
モーダルダイアログウィンドウ...
-
javascriptでCSVを呼出しvlookup
-
onclickを使わずにイベント処理...
-
【Tabキー】特定の範囲内だけで...
-
RadioButtonListの表示制御
-
オンマウスで音を鳴らせる為には?
-
Javascriptでページ内の任意ク...
-
オブジェクトがありません
-
javascriptであるボタンを押す...
-
オブジェクトがぶつかった時の処理
-
JavaScriptのID要素の中身をque...
おすすめ情報