这是我在网上看到的一段实现表格拖拽交换的代码。这里遇到的问题就是,这段好像是文本交换,我想请问,实现id交换也就是说,实现单元格所有数据的交换,应该怎么改动?
if (dragedTable_movable) {
var event = getEvent();
var x=event.x||event.pageX;
var y=event.y||event.pageY;
var oTable = document.getElementById(dragedTable_tableId);
var pos = new Array();
var posX=0;
var posY=0;
var td;
var rowslength=oTable.rows.length;
var cellslength=0;
if (dragedTable_preCell != null) {
for(var j=1;j cellslength=oTable.rows[j].cells.length;
for (var i = 0; i td=oTable.rows[j].cells[i];
pos = getPos(td);
posX=pos[1];
posY=pos[0];
//计算鼠标位置,是否在某个单元格的范围之内
if (x >posX && x < posX + td.offsetWidth && y > posY && y < posY + td.offsetHeight) {
if (oTable.rows[j].cells[i].tagName.toLowerCase() == "td") {
//交换文本
dragedTable_preCell.innerHTML = td.innerHTML;
td.innerHTML = document.getElementById(dragedTable_movedDiv).innerHTML;
//清除原单元格和目标单元格的样式
dragedTable_preCell.style.backgroundColor = dragedTable_normalColor;
td.style.backgroundColor = dragedTable_normalColor;
td.style.cursor = "";
dragedTable_preCell.style.cursor = "";
dragedTable_preCell.style.backgroundColor = dragedTable_normalColor;
}
}
}
}
}
dragedTable_movable = false;
//清除提示图层
document.getElementById(dragedTable_movedDiv).style.display = "none";
}
http://www.denghuafeng.com/post-197.html
http://fhuan123.iteye.com/blog/1128031
devmiao 苏小喵 Ds Rxr 2016.08.02 13:56
这我看了一下,这是仅仅交换表格的innerHTML?好像是的,如果每个单元格有不同的id和样式颜色啊什么的,应该怎么交换呢?