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

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

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

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

Q&A

2回答

2713閲覧

HTML、javascriptを使用し、あるボタンを押すと、テキストファイルの内容を表示する方法を教えてください

yri

総合スコア6

JavaScript

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

0グッド

0クリップ

投稿2017/02/15 05:16

###前提・実現したいこと
HTML、JavaScriptを使用し、「抽出」ボタンを押下したら、
指定したテキストファイルの内容を画面に表示する
システムを作成中です。

###発生している問題・エラーメッセージ
何も表示されない

###該当のソースコード
言語:JavaScript

ソース
var xmlHttp;

/* 抽出ボタン押下処理 */
function loadText(){

if (window.XMLHttpRequest){
xmlHttp = new XMLHttpRequest();
}else{
if (window.ActiveXObject){
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}else{
xmlHttp = null;
}
}
xmlHttp.onreadystatechange = checkStatus;
xmlHttp.open("GET", "file://Z:/aaa/test.txt", true);

xmlHttp.send(null);
}

function checkStatus(){
if (xmlHttp.readyState == 4 && xmlHttp.status == 200){
var node = document.getElementById("disp");
node.innerHTML = xmlHttp.responseText;
}
}

###試したこと
xmlHttp.readyState が 1 or 4
xmlHttp.status が 0になる

###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報

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

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

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

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

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

kei344

2017/02/15 06:17

質問文のコードはコードブロックで囲んでいただけませんか? ```(バッククオート3つ)で囲み、前後に改行をいれるか、コードを選択して「<code>」ボタンを押すとコードブロックになります。
guest

回答2

0

セキュリティ上、ローカルファイルへのXHRにはブラウザによって制約がかかります。回避する方法はいくつかありますが、Chromeに限っては「オプション引数付きでChromeを起動する」という手段が必要となります。

ローカル(file:///)上で外部ファイル読み込みのセキュリティ制約を回避するいくつかの方法

投稿2017/02/15 05:37

maisumakun

総合スコア145183

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

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

0

ローカルファイルへのアクセスの場合はxmlHttp.status==0にしてみてください。

XMLHttpRequest入門

また、chromeを使用している場合はmaisumakunさんの書き込みに従って設定してみてください。

投稿2017/02/15 05:43

編集2017/02/15 05:45
hitsujimeeee

総合スコア486

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問