如何将Excel工作表导入HTML表格,以便根据列名称将每一行转换为Object。 使用Angular JS
P.S:未来的排序表需要对象。
答案 0 :(得分:1)
我为此开发了一个组件。请看看它是否对您有所帮助:https://github.com/Helvio88/angular-xlsx-model
使用
<input type="file" xlsx-model="excel">
将使您能够选择文件 对于多个文件:
<input type="file" xlsx-model="excel" multiple>
可以进一步扩展以过滤掉特定扩展等。请参阅http://www.w3schools.com/jsref/dom_obj_fileupload.asp
选择文件后,将以此格式创建以xlsx-model属性命名的Angular JSON对象(在本例中为&#39; excel&#39;):
$ scope.excel(多个文件):
{
"file1.xlsx": {
"Sheet1": [
{
"Col1Name": "Row1Col1_Value",
"Col2Name": "Row1Col2_Value"
},
{
"Col1Name": "Row2Col1_Value",
"Col2Name": "Row2Col2_Value"
}
],
"Sheet2" : [...]
},
"file2.xlsx": {...}
}
如果您选择了多个文件,该模型有效。对于单个文件,它略有不同 $ scope.excel(单个文件):
{
"Sheet1": [
{
"Col1Name": "Row1Col1_Value",
"Col2Name": "Row1Col2_Value"
},
{
"Col1Name": "Row2Col1_Value",
"Col2Name": "Row2Col2_Value"
}
],
"Sheet2" : [...]
}