网站导航免费论文 原创论文 论文搜索 原创论文 网学软件 学术大家 资料中心 会员中心 问题解答 原创论文 大学论文导航 设计下载 最新论文 下载排行 原创论文 论文源代码
返回网学首页
网学联系
最新论文 推荐专题 热门论文 素材专题
当前位置: 网学 > 编程文档 > ASP.net > 正文

ASP.NET中应用Excel:为HTML表格增加编辑功能

来源:http://myeducs.cn 联系QQ:点击这里给我发消息 作者: 用户投稿 来源: 网络 发布时间: 12/10/12
top:none;border-left:none;border-right:none;border-bottom:1px dashed black;background-color:transparent;font-weight: bold; color: black;" '' +

'' onkeydown="return onTextBoxKeydown();" '' +

'' onchange="return onTextBoxChange();" ></INPUT>'';



var textBox = this.children[0]; // 取得对象



textBox.width = this.offsetWidth; // 设置宽度



textBox.align = ''right''; // 对齐方式,不起作用

textBox.setActive();

textBox.focus();



this.style.backgroundColor = ''#CCCCFF''; // 设置显眼的背景,表示处于激活状态

}

}



// 单元格的去激活事件

// 当单元格被激活,编辑框出现,单元格就会失去激活,此事件就会激发

function onCellDeactivate ()

{

var parentTbl = this.parentElement.parentElement; // 获取Table



if ( parentTbl.activeCell != this ) // 如果被激活单元格不是当前单元格?

{

this.innerHTML = this.dataField.length > 0 ? this.value2 : '' ''; // 恢复显示内容

}

}当然,HTML不像窗口程序,可以在设计时就挂接事件,因此,我们需要在页面加载完成后就为除行列标头之外的单元格挂接事件,进行初始化,同时可以进行还有跨行的单元格合并:

view plaincopy to clipboardprint?
document.onreadystatechange = function() // 在页面加载完成后,初始化TABLE

{

if ( this.readyState == ''complete'' )

{

initTable(); // 初始化

}

}



function initTable()

{

for(var idx in document.worksheet ) // 遍历所有表

{

var tbl = $get(document.worksheet[idx].table); // 获取TABLE对象



for( var i = tbl.cells.length - 1; i > 1; i-- ) // 从后往前遍历所有单元格

{

var ctrl = tbl.cells[i]; // 单元格对象



if ( ctrl.cellIndex > 0 && ctrl.parentElement.rowIndex > 0) // 第一行和第一列不处理

{

ctrl.onactivate = onCellActivate; // 单元格的在激活事件

ctrl.ondeactivate = onCellDeactivate; // 单元格的去激活事件



if ( ctrl._rowspan && ctrl._rowspan > 1 && ctrl.parentElement.rowIndex + 1 < tbl.rows.length ) // 如果需要合并单元格,则合并之

{

for( var n = 1; n < ctrl._rowspan; n++ ) // 合并

{

if ( ctrl.cellIndex < tbl.rows[ctrl.parentElement.rowIndex + 1].cells.length )

tbl.rows[ctrl.parentElement.rowIndex + 1].deleteCell(ctrl.cellIndex);

}



ctrl.rowSpan = ctrl._rowspan; // 设置跨度

}

}

}

}

}

document.onreadystatechange = function() // 在页面加载完成后,初始化TABLE

{

if ( this.readyState == ''complete'' )

{

initTable(); // 初始化

}

}



function initTable()

{

for(var idx in document.worksheet ) // 遍历所有表

{

var tbl = $get(document.worksheet[idx].table); // 获取TABLE对象



for( var i = tbl.cells.length - 1; i > 1; i-- ) // 从后往前遍历所有单元格

{

var ctrl = tbl.cells[i]; // 单元格对象



if ( ctrl.cellIndex > 0 && ctrl.parentElement.rowIndex > 0) // 第一行和第一列不处理

{

ctrl.onactivate = onCellActivate; // 单元格的在激活事件

ctrl.ondeactivate = onCellDeactivate; // 单元格的去激活事件



if ( ctrl._rowspan && ctrl._rowspan > 1 && ctrl.parentElement.rowIndex + 1 < tbl.rows.length ) // 如果需要合并单元格,则合并之

{

for( var n = 1; n < ctrl._rowspan; n++ ) // 合并

{

if ( ctrl.cellIndex < tbl.rows[ctrl.parentElement.rowIndex + 1].cells.le

网学推荐

免费论文

原创论文

设为首页 | 加入收藏 | 论文首页 | 论文专题 | 设计下载 | 网学软件 | 论文模板 | 论文资源 | 程序设计 | 关于网学 | 站内搜索 | 网学留言 | 友情链接 | 资料中心
版权所有 QQ:3710167 邮箱:3710167@qq.com 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
Copyright 2008-2015 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号