找回密码
 立即注册

QQ登录

只需一步,快速开始

simonshen

论坛元老

27

主题

72

帖子

1万

积分

论坛元老

积分
17729

活字格认证

[已处理] spread清空

simonshen
论坛元老   /  发表于:2012-7-19 14:36  /   查看:11711  /  回复:17
spread如何在前台通过JS设置使其内容清空

17 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2012-7-19 14:38:00
沙发
回复 1楼simonshen的帖子

参考以下代码:

  1. <SCRIPT language=javascript>
  2.    function clearSelCells() {
  3.        FpSpread1.Clear(); // clears the cell
  4.    }
  5. </SCRIPT>
复制代码
回复 使用道具 举报
simonshen
论坛元老   /  发表于:2012-7-19 14:57:00
板凳
我是将上面一段代码绑定在文本框的keyDown事件里,试过以后发现文本框里的值不能输入,我想实现的效果类似于后台代码“ vaSpread1.ActiveSheetView.RemoveRows(0, vaSpread1.ActiveSheetView.RowCount)“这样的效果,麻烦你们了!
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-7-19 17:27:00
地板
回复 3楼simonshen的帖子

请尝试以下代码,看是否满足要求:

  1.     <script language="javascript" type="text/javascript">
  2. // <![CDATA[

  3.         function Button1_onclick() {
  4.             for (var i = 0; i < 3; i++) {
  5.                 FpSpread1.SetActiveCell(i, 0);
  6.                 FpSpread1.Delete();
  7.             }
  8.         }
  9. // ]]>
  10.     </script>
复制代码
回复 使用道具 举报
simonshen
论坛元老   /  发表于:2012-7-20 10:11:00
5#
感谢版主的帮忙,代码生效了,可是出现了一个问题,因为这段代码是绑定在一个文本框的keydown事件里的,一旦调用,焦点就会失去,我就算用代码强制将焦点移回去,可是之前用户KEYDOWN时输入或者删除文本框内容的这个操作已经失效了,不知道有没有什么好的解决办法?
回复 使用道具 举报
simonshen
论坛元老   /  发表于:2012-7-20 10:43:00
6#
另外还有个问题,如何将焦点移到Spread里的某一个单元格里呢?前台后台代码都可以
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-7-20 11:03:00
7#
另外还有个问题,如何将焦点移到Spread里的某一个单元格里呢?前台后台代码都可以
simonshen 发表于 2012-7-20 10:43:00

方法如下:
  1.     <script type="text/javascript">
  2.         function setActiveCell() {
  3.             FpSpread1.SetActiveCell(i, j);
  4.         }
  5.     </script>
复制代码
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-7-20 11:09:00
8#
感谢版主的帮忙,代码生效了,可是出现了一个问题,因为这段代码是绑定在一个文本框的keydown事件里的,一旦调用,焦点就会失去,我就算用代码强制将焦点移回去,可是之前用户KEYDOWN时输入或者删除文本框内容的这个......
simonshen 发表于 2012-7-20 10:11:00

我的测试代码如下,请楼主测试,如果没有解决问题,请楼主发Demo到论坛调试:
  1. <head runat="server">
  2.     <title></title>
  3.     <script language="javascript" type="text/javascript">
  4. // <![CDATA[

  5.         function Button1_onclick() {
  6.             for (var i = 0; i < 3; i++) {
  7.                 FpSpread1.SetActiveCell(i, 0);
  8.                 FpSpread1.Delete();
  9.             }
  10.         }
  11. // ]]>
  12.         function funkeydown() {
  13.             for (var i = 0; i < 3; i++) {
  14.                 FpSpread1.SetActiveCell(i, 0);
  15.                 FpSpread1.Delete();
  16.             }
  17.             var textbox = this.document.getElementById("Text1");
  18.             textbox.focus();
  19.         }
  20.     </script>
  21. </head>
  22. <body>
  23.     <form id="form1" runat="server">
  24.     <div>
  25.         <FarPoint:FpSpread ID="FpSpread1" runat="server" BorderColor="Black" BorderStyle="Solid"
  26.             BorderWidth="1px" Height="200" Width="400">
  27.             <CommandBar BackColor="Control" ButtonFaceColor="Control" ButtonHighlightColor="ControlLightLight"
  28.                 ButtonShadowColor="ControlDark">
  29.             </CommandBar>
  30.             <Sheets>
  31.                 <FarPoint:SheetView SheetName="Sheet1">
  32.                 </FarPoint:SheetView>
  33.             </Sheets>
  34.         </FarPoint:FpSpread>
  35.         <input id="Button1" type="button" value="button" onclick="return Button1_onclick()" />
  36.         <input onkeydown="funkeydown()" id="Text1" type="text" />
  37.     </div>
  38.     </form>
  39. </body>
  40. </html>
复制代码
回复 使用道具 举报
simonshen
论坛元老   /  发表于:2012-7-20 11:20:00
9#
function setActiveCell() {

            FpSpread1.SetActiveCell(i, j);

        }

后台如果要设置的话怎么写呢?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2012-7-20 14:00:00
10#
回复 9楼simonshen的帖子
方法如下:

  1.    this.FpSpread1.Sheets[0].ActiveColumn = j;
  2.    this.FpSpread1.Sheets[0].ActiveRow = i;
复制代码
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部