私はいくつかの要素の色のプロパティを変更することができる小さなhtml5
アプリを作成しています。ユーザーに変更を保存し、後で(登録なしで)アップロードするオプションを与えたいと思います。このため、私はそれらのプロパティのテキストファイルを作成し、ボタンを追加し、私は彼らがファイルをアップロードできるようになりますボタンを追加したい、私は、ファイル選択ダイアログを作成し、ファイルをJavascriptでアップロードして処理するにはどうすればよいですか?
<label>
<input class="button"
type="file"
name="input-name"
style="display:none;"
onchange="read(event)"/>
<span id="input-file" >Select File</span>
</label>
しかし、私はできませんどのようにjavascript
にこのファイルを開き、その内容を処理するのですか?私がこの
function read(evt){
var file = document.getElementById("input-file");
//checking for file reader
if (window.File && window.FileReader && window.FileList && window.Blob){
var r = new FileReader();
r.readAsText(file);
} else{
alert("Browser not supported");
}
}
のようになります知っている。しかしfile
は、上記のファイルが、オブジェクトへのパスではないので、これは動作しません。ファイルへのパスを取得するにはどうすればよいですか?これを行うより良い方法はありますか?
。また、古いIEでは利用できません。あなたはライブラリを使ってそれをすべて扱うことができます。 –
@IsmaelMiguel:ローカルストレージは、ファイルと比べて確かに遅くはありません。最新のすべてのブラウザとIE8でサポートされています。私は2016年にIE7とearierについて心配することはないと思います。ストレージの制限はメガバイト単位です。このユースケースは、最大でも数百バイトになるでしょう。 –
あなたの言ったことのほとんどに同意します。しかし、あなたは本当に "私たちはIE7について心配することはできません"と言うことはできません。悲しいことに、まだWindows XPやそれ以上の古いもの(Windows NT)に悩まされている人がいます。だから、あなたは本当にそれを言うことができません。ほとんどの場合、はい。特定のものについては、いいえ。その情報が提供されていないため、コードが実行される予定の環境については何も知らない。 –