2017-08-23 12 views
0

私はjs-xlsxを使用して読み込み中のExcelファイルを持っています。コードは、セルが空の場合を除いて正常に動作しています。これらのセルは無視されます。 JSONオブジェクトの作成時にもこれらのセルを取得するにはどうすればよいですか?空のセルを読み取ることができませんjs-xlsxを使用してExcelファイルを読み取る

私は同じ問題のためにSOだけでなく他のいくつかのフォーラムでいくつか質問をしましたが、満足できるものはありませんでした。

何か歓迎致します。私のコード:

reader.addEventListener('load', function(){ 
     var data = this.result; 
     var wb = XLSX.read(data, {type: 'binary', sheetStubs:true}); 
     // console.log(headers); 

     wb.SheetNames.forEach(function(sheetName){ 
      //pulling out column headers for tablecreation 
      var headers = get_header_row(wb.Sheets[sheetName]); 
      createTableInDB(headers); 
      // Here is your object 
      var XL_row_object = XLSX.utils.sheet_to_json(wb.Sheets[sheetName]); 
      //console.log(XL_row_object); 

      for(var i=0; i<XL_row_object.length; i++){ 
       var json_object = XL_row_object[i]; 

       if(json_object !== null){ 
        var dataobject = { 
         "tablename": tname, 
         "dbname": dbname, 
         "info": json_object, 
         "uname": uname 
        } 

        dataobject = $.toJSON(dataobject); 

        $.ajax({ 
         type: "POST", 
         url: "insertIntoTable.php", 
         async: false, 
         data:"pInsertData=" + dataobject, 
         success: function(msg){ 

          console.log(msg); 

         } 
        }); 
        //console.log(json_object); 

       } 

      } 
     }); 
    }); 

    reader.readAsBinaryString(document.querySelector('input').files[0]); 

ファイルはHTMLで入力してアップロードします。 ありがとうございました

答えて

0

解決策1。 "(h ===未定義)続行;" "xlsx.core.min.js"でコメントアウトしてください。

または

解決策2。このXLSX.utils.sheet_to_json(wb.Sheets [name]、{blankCell:false})を実行しているときにCondition extra paramを渡します。行番号に条件を追加します。 19150 "if(defval === undefined & & blankCell)continue;"ファイルxlsx.jsなど。

関連する問題