找回密码
 立即注册

QQ登录

只需一步,快速开始

guxinghan

论坛元老

14

主题

38

帖子

4996

积分

论坛元老

积分
4996

活字格认证

[已处理] 咨询个功能实现

guxinghan
论坛元老   /  发表于:2014-9-23 14:34  /   查看:4587  /  回复:3
操作方式如下:
在页面上有“添加行”按钮,点击“添加行”,在不回发的情况下,自动加出来一行,行内的数据复制一份(例如“预算项”、“预算部门”、“预算期间”等下拉框字段),再点的话可以继续加,然后统一填好各行数据,保存时同时保存多行。


请问这个控件能实现吗?“添加行”以及复制操作,是需要在客户端实现的

3 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2014-9-23 20:00:00
沙发
回复 1楼guxinghan的帖子

可以结合客户端方法 Insert 和 Copy 方法实现这个功能,前台 Copy 方法只能复制数据,无法复制格式。
回复 使用道具 举报
guxinghan
论坛元老   /  发表于:2014-9-24 09:40:00
板凳
如果单元格里是下拉菜单,文本框等控件,能否一起复制?下拉菜单中的选项也能复制吗?
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2014-9-24 16:34:00
地板
回复 3楼guxinghan的帖子

后台可以先设置某列的 CellType,然后再到前台设置即可:

  1.         protected void Page_Load(object sender, EventArgs e)
  2.         {
  3.             if (IsPostBack)
  4.             {
  5.                 return;
  6.             }

  7.             string[]cbstr;
  8.             string[]strval;
  9.             cbstr=new String[]{"One","Two","Three"};
  10.             strval=new String[]{"1","2","3"};
  11.             FarPoint.Web.Spread.ComboBoxCellType cb=new FarPoint.Web.Spread.ComboBoxCellType();
  12.             cb.Items=cbstr;
  13.             cb.ShowButton = true;
  14.             this.FpSpread1.ActiveSheetView.Columns[0].CellType = cb;
  15.         }
复制代码


  1.     <script type="text/javascript">
  2.         function addRows() {
  3.             var spread = document.getElementById("FpSpread1");
  4.             spread.Insert();
  5.             FpSpread1.Copy(); // copies the selection to Clipboard
  6.             FpSpread1.SetActiveCell(0, 0); // goes to top of displayed sheet
  7.             FpSpread1.Paste();
  8.         }
  9.     </script>
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部