關於js讀取input文件,將內容顯示在網頁上

  //this 指的是input
getFileContent(this, function (str) {

                arrEdit[$thisIndex].setValue(str);

                try{
                    arrJsonEdit[$thisIndex].setValue(JSON.stringify(jsyaml.load(str), null, 4))
                }catch(e){
                    arrJsonEdit[$thisIndex].setValue(e.message)
                    $(".textarea-json-content:eq("+ $thisIndex +") .json-textarea .CodeMirror-line").css({"padding-left":"40px","color":"red"})
                }
                // content.value = str
                // console.log(content.value )
            });

function getFileContent (fileInput, callback) {  // 獲取文件input控件的內容
    if (fileInput.files && fileInput.files.length > 0 && fileInput.files[0].size > 0) {
        //下面這一句相當於JQuery的:var file =$("#upload").prop('files')[0];
        var file = fileInput.files[0];
        if (window.FileReader) {
            var reader = new FileReader();
            reader.readAsText(file, 'gbk');

            reader.onloadend = function (evt) {
                if (evt.target.readyState == FileReader.DONE) {

                    callback(evt.target.result);
                }
            };


            // 包含中文內容用gbk編碼

        }
    }
};

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章