标签:javascrip hang for length fir 类型 amp push 点击
将excel的数据粘贴到html的表格<textarea>中,可以点击html表格中的任何一个<textarea>点击粘贴,效果和在excel中一样。
单元格复制后的数据格式为"设备\t缺陷类型\r\n水压堵阀\t母材裂纹"。
单元格之间通过"\t"分隔,行间通过"\r\n"分隔。
数据必须粘贴到<textarea>多文本框中,如果是<input>控件换行符"\r\n"会被删除掉。
表格中要使用<textarea>接收数据,
$(function () {
$("textarea").on("change", function () {
var str = $(this).val();
var rowStrArray = str.split("\n");
var rows = [];
for (var i = 0; i < rowStrArray.length; i++) {
var row = [];
var tdStrArray = rowStrArray[i].split(‘\t‘);
for (var j = 0; j < tdStrArray.length; j++) {
row.push(tdStrArray[j]);
}
rows.push(row);
}
var startTr = $(this).parents("tr:first");
var startTd = $(this).parents("td:first");
var trIndex = -1;
var tdIndex = -1;
$("tr").each(function (i, tr) {
if (tr == startTr[0]) {
trIndex = i;
}
$(tr).find("td").each(function (j, td) {
if (td == startTd[0]) {
tdIndex = j;
}
if (trIndex != -1 && tdIndex != -1 && i >= trIndex && j >= tdIndex) {
var rowsIndex = i - trIndex;
if (rowsIndex < rows.length) {
var row = rows[rowsIndex];
var rowIndex = j - tdIndex;
if (rowIndex < row.length) {
var val = rows[rowsIndex][rowIndex];
$(td).find("textarea").val(val);
}
}
}
});
})
});
});
标签:javascrip hang for length fir 类型 amp push 点击
原文地址:https://www.cnblogs.com/guohu/p/9609437.html