我正在尝试添加一个按住shift键并单击的功能来选择一定范围的单元格(这正是shift在winforms中默认执行的操作)。
我想要做的是在展开组件处于焦点时识别第一次按下shift键的时间,并将单元格坐标保存在隐藏输入中。
由于某些原因,我无法从ActiveCol或ActiveRow获取值。它们返回未定义的。我试着用代码预置一个活动的单元格,但它仍然返回未定义。
我还检查了‘ss’的值,它返回了一个元素。
function shiftCheckDown(event)
{
var ss = document.getElementById('<%=FpSpread1.ClientID %>');
//ss.SetActiveCell(0,3);
if (ss != null) {
var col = ss.ActiveCol;
var row = ss.ActiveRow;
//var col = FpSpread1.ActiveCol;
//var row = FpSpread1.ActiveRow;
if (event.keyCode == 16) {
alert(row);
document.getElementById('RowCoord').value = row;
document.getElementById('ColCoord').value = col;
}
}
} 我使用onkeydown来调用函数。
<FarPoint:FpSpread onkeydown="shiftCheckDown(event)" ID="FpSpread1" runat="server" ActiveSheetViewIndex="0" . . . 如果您需要更多信息,请告诉我。
发布于 2012-09-29 01:24:01
ActiveCol和ActiveRow仅适用于IE
对于火狐和其他浏览器,您需要使用GetActiveRow和GetActiveCol
var col = ss.ActiveCol;
var row = ss.ActiveRow;
if (col == undefined) {
var col = ss.GetActiveCol;
var row = ss.GetActiveRow;
}发布于 2016-04-05 16:09:29
实际上是这样的:
col = ss.GetActiveCol();
row = ss.GetActiveRow();https://stackoverflow.com/questions/12643910
复制相似问题