点击获取当前行的ID,并在弹出窗口中得到id值

楼主
我是社区第66158位番薯,欢迎点我头像关注我哦~
需求:
         页面1显示的是当前记录的几个比较重要的字段,点击当前一行然后点击编辑,要弹出一个窗口,显示详细字段,并可以编辑。

实现方法1:

        在主页面,也就是页面1中,添加加载结束事件。
  1. var curLGP = contentPane.curLGP; //获取当前填报表
  2. contentPane.on("cellselect", function(rowvalue) { //增加单元格选中监听事件
  3. var rownum = $(rowvalue).attr("id"); //获取选中的单元格的当前行号
  4. window.num = rownum; //将当前行号赋值给window的num变量
  5. });
复制代码
      这个帮助文档中有。
     然后在主页面上添加一个编辑按钮,添加按钮的点击事件。
  1. var a=(window.num.split("-")[0]);
  2.      var b=a.substring(1);//获取到行号
  3.      var c="B"+b;//这一行数据的主键也就是id放在B列隐藏。
  4.      var d=contentPane.curLGP.getCellValue(c);  //获取到id的值   
  5.      //做到这步 已经获取到id值了。接下来我们就要给新的窗口穿参数了。
复制代码
       创建新的窗口:
  1.      var iframe = $("<iframe id='inp' name='inp' width='100%' height='100%' scrolling='yes' frameborder='0'>"); // 对话框内iframe参数的命名,默认宽高占比是100%,可向下滚动
  2.      iframe.attr("src","${servletURL}?reportlet=xiangqing.cpt&op=write&id="+d); //复制之后记得修改路径
  3.      var o = { width :530, //对话框宽度
  4.      height: 600 //对话框高度
  5.     };
  6.      FR.showDialog("编辑", o.width, o.height, iframe,o);//弹出对话框
复制代码
    然后我们在xiangqing.cpt页面随便找个一个单元格写=$id即可获取到在主页面点击的id值。
    实现方法2:
           其实方法1和方法2的思路都是一样的,都是获取到点击行的主键id然后传给新的窗口,方法2更为完善
  1. contentPane.on("cellselect", function(td) {  //获取单元格被选中监听事件  
  2.   var row =contentPane.curLGP.getTDRow(td); //直接获取到行号
  3.   if(row<4)//这里我是做了一个判断,比如表头页面肯定是有几行是不能选的,方法1中那个方法是页面所有的地方都可以点击获取并传值,没有做判断
  4.           return;//小于4行就return出去。
  5.   var id=contentPane.curLGP.getCellValue(3,row-1); 直接根据单元格获取到id值。
  6.   contentPane.curLGP.setCellValue("G1",null,id);  //这里是我在主页面上给F1单元格赋值 ,然后把F1单元格隐藏就行了
  7. });  
复制代码
     然后在编辑按钮上一样是添加点击事件,然后把FI单元格的值当做参数传递出去就行。获取方法:
  1. var version=contentPane.curLGP.getCellValue(6,0);

  2. if(version.length==0)
  3. {
  4. return;
  5. } ;
复制代码

这个只是提供一个思路和一种获取到主键的方法,可以用在很多方面,比如获取到id进行删除等。

分享扩散:
参与人数 +1 F豆 +366 理由
兔子酱 + 366 感谢参与精华帖奖励计划~~

查看全部评分

沙发
发表于 2017-12-18 11:25:24
板凳
发表于 2017-12-18 11:33:05
感谢投稿,已提名精华帖,待论坛运营委员会评分后可评为精华帖。帆软论坛精华帖奖励计划http://bbs.fanruan.com/thread-91079-1-1.html
地板
发表于 2017-12-18 14:47:59

好像直接用用超链接也可以实现这个功能
5楼
发表于 2017-12-18 16:56:05
6楼
发表于 2017-12-18 17:22:31
7楼
发表于 2017-12-18 17:23:04
8楼
发表于 2017-12-19 08:29:44
建议楼主写一个完整示例,贴上截图,附上cpt,只有代码解释对于新手来说不容易看懂。
9楼
发表于 2019-1-7 18:25:52
备注一下啊
10楼
发表于 2019-1-7 18:31:54

备注啥?
11楼
发表于 2023-6-8 12:44:47
按方法1操作,参数值变化有点滞后呢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

14回帖数 2关注人数 12253浏览人数
最后回复于:2023-6-8 12:44

返回顶部 返回列表