Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用HTML和JavaScript创建Excel格式输出_Javascript_Jquery_Html_Jquery Plugins - Fatal编程技术网

使用HTML和JavaScript创建Excel格式输出

使用HTML和JavaScript创建Excel格式输出,javascript,jquery,html,jquery-plugins,Javascript,Jquery,Html,Jquery Plugins,我接受了采访,问的问题是: 编写一个JS插件,可以将单元格和值作为输入,并在浏览器上呈现excel格式的输出。例如, 给定输入(单元格和值): 浏览器上的输出应为excel格式 A B C ....... J K ....... 1 10 2 20 3 5 .. 我在为这个问题寻找正确的解决办法 我试图解决这个问题(编写psudeo代码) } 他们说,对于大量的细胞输入,这将是无效的。

我接受了采访,问的问题是:

编写一个JS插件,可以将单元格和值作为输入,并在浏览器上呈现excel格式的输出。例如,

给定输入(单元格和值):

浏览器上的输出应为excel格式

   A   B   C ....... J    K .......
1                         10
2  20 
3                    5
..
我在为这个问题寻找正确的解决办法

我试图解决这个问题(编写psudeo代码)

}

他们说,对于大量的细胞输入,这将是无效的。我建议我们可以使用矩阵创建表

   A   B...    J  K .... 
1 [               10      ]
2   20
3              5   

Excel电子表格是表格。你能用一张简单的桌子吗?如果是这样的话,我建议使用CSS属性使其看起来更好,同时也可以减少单元格填充和边距。

Excel电子表格是表格。你能用一张简单的桌子吗?如果是这样的话,我建议使用CSS属性使它看起来更好,并可能减少单元格的填充和边距。

我认为您一开始就做得很好。首先创建一个包含元素的表。这将是26列宽,与最大y值一样高。把字母转换成数字

对不起w3schools链接,我可能会因为提到它们而被否决,但是他们有关于table对象的最好的文档,我可以为您搜索。我会更新它,如果有人有更好的东西

MDN教程

然后,您可以通过以下方式最有效地访问表单元格:

var table = ;//get by id or create element, not sure what they expect
table.rows[y].cells[x].appendChild(...);

我认为你开始的很好。首先创建一个包含元素的表。这将是26列宽,与最大y值一样高。把字母转换成数字

对不起w3schools链接,我可能会因为提到它们而被否决,但是他们有关于table对象的最好的文档,我可以为您搜索。我会更新它,如果有人有更好的东西

MDN教程

然后,您可以通过以下方式最有效地访问表单元格:

var table = ;//get by id or create element, not sure what they expect
table.rows[y].cells[x].appendChild(...);

到目前为止你得到了什么?人们应该很乐意帮助你优化代码,但是如果他们为你做了回答,他们不应该得到这份工作吗=)?你在面试中给出了答案吗?你试过什么?到目前为止你得到了什么?人们应该很乐意帮助你优化代码,但是如果他们为你做了回答,他们不应该得到这份工作吗=)?你在面试中给出了答案吗?你试过什么?
var table = ;//get by id or create element, not sure what they expect
table.rows[y].cells[x].appendChild(...);