找回密码
 立即注册

QQ登录

只需一步,快速开始

icerose

银牌会员

4

主题

9

帖子

2088

积分

银牌会员

积分
2088

活字格认证

icerose
银牌会员   /  发表于:2012-3-7 01:35  /   查看:5252  /  回复:3
我用
bt.OnClientClick = "return false;";之后,还是交提了.
我也看过社区里关于删除按钮类似功能的例子,代码考过来,还是会提交.
并且ButtonCellType好象也没有autopostback属性....

3 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-3-7 09:30:00
沙发
Morning icerose,
请提供下 Spread 版本信息。使用你的代码点击 Button 并没有提交到后台,是否设置了 Sheet AutoPostback 属性呢?下面是我的代码:

  1. FarPoint.Web.Spread.ButtonCellType btn = new FarPoint.Web.Spread.ButtonCellType();
  2.             btn.OnClientClick = "return false";
  3.             FpSpread1.ActiveSheetView.Cells[1, 1].CellType = btn;
  4.             FpSpread1.ActiveSheetView.AutoPostBack = false;
复制代码
Demo 下载:
测试环境:vs2010 && Spread for ASP.NET 5.0
3576.zip (2.77 MB, 下载次数: 178)
回复 使用道具 举报
icerose
银牌会员   /  发表于:2012-3-12 23:34:00
板凳
我找到问题原因了,因为我把FarPoint.Web.Spread放在了UpdatePanel 里了,
所以不能直接return false取销回调.
我生成了一个javascript字符串,写到客户端就可以了.正常取销回调了.


                jsStr = "function CheckStatus (sender, eventArgs){\n" +
                        "   //alert(eventArgs.get_postBackElement().id);\n" +
                        "   //prompt('',eventArgs.get_postBackElement().id );\n" +
                        "   if (eventArgs.get_postBackElement().id==\"FpSCommandBox\"){\n" +
                        "       if(FpSCommandBox.ActiveCol==4){\n"+
                        "              var prm = Sys.WebForms.PageRequestManager.getInstance();\n"+
                        "              if (confirm(\"将会影响数据库,确认保存吗?\")== false) {\n eventArgs.set_cancel(true);}\n" +
                        "          }\n" +
                        "   }\n" +
                        "};\n";
                 javaScriptStr.Append(jsStr);


不过这时候又出一个问题,
msdn上说
" 如果回发正在进行,则可使用 Sys.WebForms.InitializeRequestEventArgs 类的 postBackElement 属性,确定导致回发的元素的 ID。 如果该 ID 与取消回发的按钮的 ID 相匹配,则调用 abortPostBack 方法。 否则,使用 Sys.CancelEventArgs 类的 cancel 属性,取消当前请求。 "

而我取回的是eventArgs.get_postBackElement().id是格表的ID,而不是表格是谋行谋列的按钮的ID.
我现在又用活动列再判断一定,才可以实现.随然可以实现功能,便感觉还有哪有问题了.
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-3-14 11:03:00
地板
icerose 你好,
在测试 Demo 中,Spread 添加到 UpdatePanel 中,并没有重现你的问题,能否发 Demo 到论坛调试?
35762.zip (2.77 MB, 下载次数: 192)
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部