<script language="javascript" type="text/javascript" id="Card_Script2">
function Card_ActiveCellChanged(event){
var card = document.getElementById("<%=Card.ClientID %>");
var cell = card.GetCellByRowCol(card.ActiveRow+1,card.ActiveCol);
if (cell.title == "特殊字段") {
<%=Page.GetPostBackEventReference(btnEnter)%>
}
}
</script>
<script type="text/javascript" >
window.onload = function () {
var card = document.getElementById("<%=Card.ClientID %>");
card.onkeydown = Move;
}
function Move() {
if (event.keyCode == 13) {
var card = document.getElementById("<%=Card.ClientID %>");
var col = card.ActiveCol;
var row = card.ActiveRow;
var colCount = card.GetColCount();
var cell = card.Cells(row, col);
if (col + 1 < colCount) {
if (cell.CellType2 == "LabelCellType") {
card.MoveToNextCell();
}
}
else if (col + 1 == colCount ) {
card.SetActiveCell(row + 1, 1);
}
else if (col + 1 == colCount ) {
card.SetActiveCell(row + 1, 1);
}
}
}
</script>
以上是给spread写的一段js,以实现单击单元格能切换焦点的问题。但达不到我目前想实现的效果
原来的想法是每次move的时候判断一下,当前activecole的值,如果加1还小于colcount,就继续movenextcell,否则movenextcolumn,但实际情况是,如果单元格在设计时经过了合并,那么这个判断就是失效的。请问如何能解决这个问题。
另外用activecellchanged事件我想达到的效果是,当前单元格丢失焦点时,调用一个后台button,这时候后台代码涉及的参数要是已经丢失焦点的单元格的,而非是已经得到焦点的新的cell对象的,该如何解决,谢谢 |
|