找回密码
 立即注册

QQ登录

只需一步,快速开始

szpzr

高级会员

139

主题

554

帖子

1763

积分

高级会员

积分
1763

活字格认证

szpzr
高级会员   /  发表于:2016-7-11 10:30  /   查看:10757  /  回复:24
spread的单元格之间切换可以用回车键吗?如何实现单元格输入值和数据表字段内容是否一致的事件或方法?

24 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-7-11 10:56:39
沙发
1.回车切换可以使用前端AddKeyMap。
  1.     <script type="text/javascript">

  2.        window.onload = function() {
  3.            var spread1 = document.getElementById("<%=FpSpread1.ClientID %>");
  4.            spread1.AddKeyMap(13, false, false, false, function () {
  5.                var ss = spread1; ss.MoveToNextCell(true);
  6.            });
  7.        }

  8. </script>
复制代码


2. 数据验证您可以看下文档中 Using Validation Controls 章节。以及之前用户的提问
http://gcdn.gcpowertools.com.cn/showtopic-21256-1-1.html
回复 使用道具 举报
szpzr
高级会员   /  发表于:2016-7-11 15:13:15
板凳
初次接触spread,第一个问题已解决,第二个问题不太明白,请教能否指点下。
回复 使用道具 举报
szpzr
高级会员   /  发表于:2016-7-11 15:13:21
地板
初次接触spread,第一个问题已解决,第二个问题不太明白,请教能否指点下。
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-7-11 16:02:33
5#
具体做法就是
1. 设置单元格格式
FarPoint.Web.Spread.TextCellType txt1 = new FarPoint.Web.Spread.TextCellType();
2. 设置验证方式
RequiredFieldValidator rfv = new RequiredFieldValidator();
            rfv.ErrorMessage = "RequiredFieldValidator, from code: value required!";
            txt1.Validators.Add(rfv);
3. 给单元格设置单元格格式
FpSpread1.ActiveSheetView.Cells[0, 0].Text = "RequiredFieldValidator, from code";
            FpSpread1.ActiveSheetView.Cells[0, 1].CellType = txt1;
回复 使用道具 举报
szpzr
高级会员   /  发表于:2016-7-12 08:26:35
6#
谢谢师傅们的前面指教!
后台protected override void Render(HtmlTextWriter writer)
        {
            Table viewPort = this.FpSpread1.FindControl("viewport") as Table;
            viewPort.Attributes.Add("onclick", "clickOnSpread()");
            base.Render(writer);
        }
触发的是单击事件,如果按回车触发事件代码怎样写?
回复 使用道具 举报
szpzr
高级会员   /  发表于:2016-7-12 08:34:33
7#
另外单元格输入数据后,如何不按左下角的更新按钮,就能捕捉到输入的值呢?
回复 使用道具 举报
szpzr
高级会员   /  发表于:2016-7-12 08:52:53
8#
onclick改成onkeypress或者onkeyup不能捕捉到输入值,应该怎样在输入完成后激发事件并且捕捉输入值?
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-7-12 09:02:43
9#
本帖最后由 dexteryao 于 2016-7-12 09:05 编辑

1. 回车事件您还是使用  spread1.AddKeyMap(13 2. 前端js提交
  1. <script type="text/javascript">
  2.    function onUpdateButtonClick() {
  3.        var spread1 = document.getElementById("<%=FpSpread1.ClientID %>");
  4.        spread1 .Update();    // updated to server
  5.    }
  6. </script>
复制代码

3. 自动提交设置
  1. FarPoint.Web.Spread.SheetView sv;
  2. sv = FpSpread1.ActiveSheetView;
  3. sv.AutoPostBack = true;
复制代码

回复 使用道具 举报
szpzr
高级会员   /  发表于:2016-7-13 16:42:01
10#
<script type="text/javascript">
   function onUpdateButtonClick() {
       var spread1 = document.getElementById("<%=FpSpread1.ClientID %>");
       spread1 .Update();    // updated to server
   }
</script>
不知什么原因,还是扑捉不到输入值?
回复 使用道具 举报
123下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部