JavaScript网格复制为字符串



我在JavaScript方面没有什么问题。我正在做的是从一个网格复制数据并粘贴到另一个网格中。我可以访问单元格中的值,但问题来了,因为我试图将这些值格式化为字符串。我的代码:

var colseperator = '~';
var rowseperator = '    ';
var clipStr = "";
if(selecttype = "area")
{
for (var i = startrow; i <= endrow; i++) 
{
for (var j = startcol; j <= endcol; j++)
{
var cellValue = objGrid.getCellValue(i,j);
if(this.gfn_isNull(cellValue))
{
cellValue = "Null";
}
clipStr = clipStr + cellValue;
if(j != endcol)
{
clipStr = clipStr + colseperator;
}
}
if(i != endrow)
{
clipStr = clipStr + rowseperator;
}
}
}

根据上面的代码,我的意图是将数据复制成字符串格式,并用分隔符分隔每个数据(在我的情况下,列为"~",行为"indent"(。但是,当我选择一列(多行(并复制它时,它会向所有行添加列分隔符。我在想if(j != endcol){clipStr = clipStr + colseperator;}会阻止它添加不必要的分隔符。我是不是做错了什么?还有关于迭代选定网格单元格或格式化字符串的提示吗?

示例:当我选择这三行时,

数据
1a
2b
3c

如果不迭代第一项,可以为cols添加一个变量并添加分隔符。

var colseperator = '~',
rowseperator = '    ',
clipStr = "";
if (selecttype = "area") {
for (var i = startrow; i <= endrow; i++) {
var cols = "";
for (var j = startcol; j <= endcol; j++) {
var cellValue = objGrid.getCellValue(i, j);
if (this.gfn_isNull(cellValue)) cellValue = "Null";
if (j !== startcol) cols += colseperator;
cols += cellValue;
}
if (j !== startcol) clipStr += rowseperator;
clipStr += cols;
}
}

相关内容

最新更新