← 返回所有博客文章

前言:我们都知道,锁定 Cell,即为用户在前台不能更改这个 Cell 的值,同时终端用户不能编辑这个单元格(可以复制)。 早期的 Spread ,用户可以通过前台 JS 代码更改锁定 Cell 的值,但是某些用户提出,这个功能导致锁定功能不完善,所以在近期的 Spread 版本中得到了更改。但是 Spread 控件使用广泛,有很多用户还是希望可以通过前台 JS 代码改变 锁定 Cell 的值。

下面,我们就通过代码逐步演示如何通过 JS 编辑 锁定 Cell 值。
1.我先在后台设置第一列 Locked 属性为 true。
   注意:在这里需要提醒大家,如果 SheetView 表单的 Protected 为 false (此属性默认值为 true) ,Locked 设置无效。

 
this.FpSpread1.ActiveSheetView.Columns[0].Locked = true;
复制代码

2.在前台添加 HTML Button,同时添加 Button1_onclick 事件 ,用来触发改变锁定 Cell 的值。
3.在 Button1_onclick 事件中如下代码,即可实现锁定 Cell 值的编辑。

 
<script type="text/javascript">
        function Button1_onclick() {
            var cell = FpSpread1.GetCellByRowCol(0, 0);
            cell.removeAttribute("FpCellType");
            FpSpread1.SetValue(0, 0, "setvalue", true);
            cell.setAttribute("FpCellType","readonly");  
            FpSpread1.UpdatePostbackData();
        }
</script>
复制代码

好了,仅仅需要以上三个步骤,我们就可以轻松改变锁定 Cell 的值了~