提问
 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,极速登录

长期免费代写自定义函数

迈达斯之手 番薯互助团队 互助砖家
发表于 2017-2-15 10:56 | 显示全部楼层 |取消关注该作者的回复
问题 超链接触发按钮点击的方法:
问题传送门:http://bbs.fanruan.com/thread-85800-1-1.html
按钮初始化事件 :
  1. FR.TestBtn = this;//习惯把按钮赋值给一个变量,不喜欢用方法去拿
复制代码
点击事件:
  1. alert("按钮点击被触发了!");
复制代码
这里只是举例说明,实际事件以自己写的为主
添加一个超链接JS:
  1. FR.TestBtn.fireEvent('click');
复制代码
OK了!
1.jpg
此帖共有 798 位番薯登录后查看
  收起(6)
  • 星痕 星痕

    {:8_206:}霸气冲天的师傅啊
    2017-02-15 11:30 评论
  • x82905301 x82905301 : 有个小问题,我是按照这个写的,但是放在数据列会对应不上,这个要怎么办。
    2018-01-17 16:08 评论
  • 迈达斯之手 迈达斯之手 : 回复 x82905301 :扩展的你的FR.testBtn要改造成一个数组~很简单~自己思考一下就知道了~
    2018-01-18 09:00 评论
  • x82905301 x82905301 : 回复 迈达斯之手 :懂了,就是说超链接和按钮获取行号列号命名不一样,对应点击的也不一样是吧。
    2018-01-18 10:48 评论
  • 迈达斯之手 迈达斯之手 : 回复 x82905301 :是的~
    2018-01-18 11:06 评论
  • 还有1条评论 点击查看

    评论

回复 支持 反对

使用道具 举报

迈达斯之手 番薯互助团队 互助砖家
发表于 2017-2-15 13:25 | 显示全部楼层 |取消关注该作者的回复
问题:时间段报表联动
问题传送门:http://bbs.fanruan.com/thread-85810-1-1.html
分别做p1 p2 p3 3个参数,p1是下拉框 p2是开始时间 p3是结束时间
p2日期控件初始化事件
  1. FR.p2=this;//把控件赋值给变量,省得获取的时候写一长串代码
复制代码
p3日期控件初始化事件
  1. FR.p3=this;//把控件赋值给变量,省得获取的时候写一长串代码
复制代码
p1下拉框编辑后事件
  1. var sfv = this.getValue();
  2. var start = '';
  3. var end = '';
  4. if(sfv == '本月'){
  5.         start = FR.remoteEvaluate('FORMAT(DATEINMONTH(TODAY(),1),"yyyy-MM-dd")');
  6.         end = FR.remoteEvaluate('FORMAT(DATEINMONTH(TODAY(),-1),"yyyy-MM-dd")');
  7. }else if(sfv == '上月'){
  8.         start = FR.remoteEvaluate('FORMAT(DATEINMONTH(DATEDELTA(DATEINMONTH(TODAY(),1),-1),1),"yyyy-MM-dd")');
  9.         end = FR.remoteEvaluate('FORMAT(DATEINMONTH(DATEDELTA(DATEINMONTH(TODAY(),1),-1),-1),"yyyy-MM-dd")');
  10. }else if(sfv == '本周'){
  11.         start = FR.remoteEvaluate('FORMAT(DATEINWEEK(TODAY(),1),"yyyy-MM-dd")');
  12.         end = FR.remoteEvaluate('FORMAT(DATEINWEEK(TODAY(),-1),"yyyy-MM-dd")');
  13. }else if(sfv == '上周'){
  14.         start = FR.remoteEvaluate('FORMAT(DATEINWEEK(DATEDELTA(DATEINWEEK(TODAY(),1),-1),1),"yyyy-MM-dd")');
  15.         end = FR.remoteEvaluate('FORMAT(DATEINWEEK(DATEDELTA(DATEINWEEK(TODAY(),1),-1),-1),"yyyy-MM-dd")');
  16. }
  17. FR.p2.setValue(start);
  18. FR.p3.setValue(end);
复制代码
OK了~


  • 评论

回复 支持 反对

使用道具 举报

迈达斯之手 番薯互助团队 互助砖家
发表于 2017-2-15 13:31 | 显示全部楼层 |取消关注该作者的回复
问题:时间段报表联动
问题传送门:http://bbs.fanruan.com/thread-85810-1-1.html
分别做p1 p2 p3 3个参数,p1是下拉框 p2是开始时间 p3是结束时间
p2日期控件初始化事件
  1. FR.p2=this;//把控件赋值给变量,省得获取的时候写一长串代码
复制代码
p3日期控件初始化事件
  1. FR.p3=this;//把控件赋值给变量,省得获取的时候写一长串代码
复制代码
p1下拉框编辑后事件
  1. var sfv = this.getValue();
  2. var start = '';
  3. var end = '';
  4. if(sfv == '本月'){
  5.         start = FR.remoteEvaluate('FORMAT(DATEINMONTH(TODAY(),1),"yyyy-MM-dd")');
  6.         end = FR.remoteEvaluate('FORMAT(DATEINMONTH(TODAY(),-1),"yyyy-MM-dd")');
  7. }else if(sfv == '上月'){
  8.         start = FR.remoteEvaluate('FORMAT(DATEINMONTH(DATEDELTA(DATEINMONTH(TODAY(),1),-1),1),"yyyy-MM-dd")');
  9.         end = FR.remoteEvaluate('FORMAT(DATEINMONTH(DATEDELTA(DATEINMONTH(TODAY(),1),-1),-1),"yyyy-MM-dd")');
  10. }else if(sfv == '本周'){
  11.         start = FR.remoteEvaluate('FORMAT(DATEINWEEK(TODAY(),1),"yyyy-MM-dd")');
  12.         end = FR.remoteEvaluate('FORMAT(DATEINWEEK(TODAY(),-1),"yyyy-MM-dd")');
  13. }else if(sfv == '上周'){
  14.         start = FR.remoteEvaluate('FORMAT(DATEINWEEK(DATEDELTA(DATEINWEEK(TODAY(),1),-1),1),"yyyy-MM-dd")');
  15.         end = FR.remoteEvaluate('FORMAT(DATEINWEEK(DATEDELTA(DATEINWEEK(TODAY(),1),-1),-1),"yyyy-MM-dd")');
  16. }
  17. FR.p2.setValue(start);
  18. FR.p3.setValue(end);
复制代码
OK了~
说一下公式是什么个意思
DATEINMONTH/DATEINWEEK对today求1和-1分别得到的是本月/周的第一天和最后一天,DATEDELTA对本月/周第一天求-1就是上月/周的最后一天,再用DATEINMONTH/DATEINWEEK求1就得到上月/周的第一天
所以上面的上月/周最后一天还可以写成
  1. FORMAT(DATEDELTA(DATEINMONTH(TODAY(),1),-1),"yyyy-MM-dd")
  2. FORMAT(DATEDELTA(DATEINWEEK(TODAY(),1),-1),"yyyy-MM-dd")
复制代码



  • 评论

回复 支持 反对

使用道具 举报

迈达斯之手 番薯互助团队 互助砖家
发表于 2017-2-18 21:10 | 显示全部楼层 |取消关注该作者的回复
问题:双击任意一行页面进行跳转,传递参数
问题链接:http://bbs.fanruan.com/thread-85922-1-1.html

web属性,加载结束事件
  1. var fire = false;
  2. //超链接所在列序号
  3. var colidx = 4;
  4. //获取所有的行,当然你可以自己完善增加控制点击有效区域的代码
  5. //比如3-9行之类的点击才有效,或者A1-E15之类的看你自己需要了
  6. $('tr[tridx]').click(function(e){
  7.         fire = !fire;
  8.         if(fire){
  9.                 $('span',$('td',$(e.target.parentNode))[colidx]).click();
  10.         }
  11. });
复制代码







  收起(1)
  • doumenwangjian doumenwangjian

    谢谢,谢谢,谢谢
    2017-02-19 21:49 评论
  • 评论

回复 支持 反对

使用道具 举报

xiao27343 社区微信达人 初学乍练(Lv1)
发表于 2017-2-23 14:29 | 显示全部楼层 |取消关注该作者的回复
5463958ae8107d06df.png   如何用函数在填报页实现,或者在sql里实现呢?
  收起(1)
  • 迈达斯之手 迈达斯之手

    你现在做出来是什么效果呢~
    2017-02-23 15:05 评论
  • 评论

回复 支持 反对

使用道具 举报

xiao27343 社区微信达人 初学乍练(Lv1)
发表于 2017-2-23 15:10 | 显示全部楼层 |取消关注该作者的回复
表格从erp里导出来格式就固定的,类似于上图左边有空白的单元格“名称”,导入数据库后也是一样为空的,想在导入时的填报页面通过  函数补全,这样才能继续做视图树。效果跟上图一样,只是字段和数据不一样
  收起(1)
  • 迈达斯之手 迈达斯之手

    你如果是导入excel的话~不行的~导入的时候会把公式冲掉的~导入后所有的公式都失效了~
    2017-02-23 15:21 评论
  • 评论

回复 支持 反对

使用道具 举报

xiao27343 社区微信达人 初学乍练(Lv1)
发表于 2017-2-23 15:32 | 显示全部楼层 |取消关注该作者的回复
那么在导入后,再对数据库特定列为空的行 进行批量处理要怎么做呢?
  收起(1)
  • 迈达斯之手 迈达斯之手

    写excel导入后事件,通过判断目标列的格子从上到下的遍历,如果有值,放到全局变量中,没值把全局变量的值赋给当前单元格~
    2017-02-23 16:17 评论
  • 评论

回复 支持 反对

使用道具 举报

迈达斯之手 番薯互助团队 互助砖家
发表于 2017-2-24 17:32 | 显示全部楼层 |取消关注该作者的回复
本帖最后由 迈达斯之手 于 2017-2-24 17:37 编辑

问题:特定的sheet页面下控件不可见
连接:http://bbs.fanruan.com/thread-86190-1-1.html
1.先将要隐藏的控件赋值给一个全局对象控件初始化事件【个人习惯,不喜欢用方法去拿】
  1. FR.MyWidget = this;
复制代码

2.加载结束事件
  1. if(null == FR.WShow){
  2.         FR.WShow = true;
  3. }
  4. if(FR.WShow){
  5.         FR.WShow = false;
  6.         var btns = contentPane.$contentPane.data('TabPane').tabBtns;
  7.         btns.forEach(function(item,idx){
  8.                 item.on('click',function(e){
  9.                         if(idx==4){
  10.                                 FR.MyWidget.setVisible(false);
  11.                         }else{
  12.                                 FR.MyWidget.setVisible(true);
  13.                         }
  14.                 });
  15.         });
  16. }
复制代码
可以了,我这里设置的是第五个sheet【序号就是4,从0开始的】

其实方法还有很多种了,比如你可以重写选择sheet的js,不过这个要对FR的js有足够的了解才行。还有一种笨办法你可以监控当前选择的是哪个sheet等等~

  • 评论

回复 支持 反对

使用道具 举报

flyingsnake 社区微信达人实名认证 番薯互助团队 文档共创团队 互助叫兽、助理编辑
发表于 2017-3-2 10:21 | 显示全部楼层 |取消关注该作者的回复
老大,是否可以写个ip地址到实际地理位置的函数呢?比如使用淘宝或腾讯的数据接口的
  收起(1)
回复 支持 反对

使用道具 举报

flyingsnake 社区微信达人实名认证 番薯互助团队 文档共创团队 互助叫兽、助理编辑
发表于 2017-3-31 14:25 | 显示全部楼层 |取消关注该作者的回复
迈神,您看看这个函数是否有思路写
当页面加载的时候,如果控件太多,会早晨页面加载缓慢。用户体验感不好。
有个思路,当页面展现的时候,不加载控件,当页面加载完,才执行一个函数,进而展现控件。不知道是否可行。
  收起(1)
  • 迈达斯之手 迈达斯之手

    这种一般都不这么做的~一般都是做成主子报表~点击主表的某些单元格(需要编辑的),然后跳出子表,里面显示对应的控件,编辑后把值回填就可以了~
    2017-03-31 14:28 评论
  • 评论

回复 支持 反对

使用道具 举报

monvzhilei  初出茅庐(Lv3)
发表于 2017-4-18 12:11 | 显示全部楼层 |取消关注该作者的回复
迈神,我这样的需求,有没有解决的办法?
http://bbs.fanruan.com/thread-89483-1-1.html
  • 评论

回复 支持 反对

使用道具 举报

郭亮 社区微信达人 渐入佳境(Lv2)
发表于 2017-7-16 00:15 | 显示全部楼层 |取消关注该作者的回复
{:8_214:}
  • 评论

回复 支持 反对

使用道具 举报

Kingcee  初学乍练(Lv1)
发表于 2017-8-14 10:00 | 显示全部楼层 |取消关注该作者的回复
谢谢谢谢谢谢
  • 评论

回复 支持 反对

使用道具 举报

珍惜 社区微信达人实名认证 渐入佳境(Lv2)
发表于 2017-8-22 10:28 | 显示全部楼层 |取消关注该作者的回复
god,在标签自定义怎么编写对 this.value修改成 微软雅黑,只要js写
  • 评论

回复 支持 反对

使用道具 举报

迈达斯之手 番薯互助团队 互助砖家
发表于 2017-8-22 10:34 | 显示全部楼层 |取消关注该作者的回复
珍惜 发表于 2017-8-22 10:28
god,在标签自定义怎么编写对 this.value修改成 微软雅黑,只要js写

你把this.value 放到一个dom里面~dom的css设置字体为微软雅黑~
  收起(3)
  • 珍惜 珍惜 : {:8_218:} 小白不懂
    2017-08-22 10:36 评论
  • 迈达斯之手 迈达斯之手 : 回复 珍惜 :不懂就去学~学了就会了~很简单的~{:8_203:}
    2017-08-22 10:37 评论
  • 珍惜 珍惜 : 回复 迈达斯之手 :
    2017-08-22 10:38 评论
  • 评论

回复 支持 反对

使用道具 举报

gavindexu 社区微信达人 初学乍练(Lv1)
发表于 2017-9-2 11:50 | 显示全部楼层 |取消关注该作者的回复
  • 评论

回复 支持 反对

使用道具 举报

迈达斯之手 番薯互助团队 互助砖家
发表于 2017-9-4 10:51 | 显示全部楼层 |取消关注该作者的回复
gavindexu 发表于 2017-9-2 11:50
分位数计算求大神帮助
http://bbs.fanruan.com/forum.php?mod=viewthread&tid=95765

直接用FR的函数就可以算出来的吧这个~不用自定义函数
假设要算B1扩展出来的80%的分位数公式如下
INDEXOFARRAY(SORTARRAY(B1), ROUNDDOWN((COUNT(B1) - 1) * 0.8) + 1) * (1 - ((COUNT(B1) - 1) * 0.8 - ROUNDDOWN((COUNT(B1) - 1) * 0.8))) + ((COUNT(B1) - 1) * 0.8 - ROUNDDOWN((COUNT(B1) - 1) * 0.8)) * INDEXOFARRAY(SORTARRAY(B1), ROUNDDOWN((COUNT(B1) - 1) * 0.8) + 2)

点评

原理 将数组从小到大排序, 计算(n-1)*p的整数部分为i,小数部分为j,其中n为数组大小 则percentile的值是:(1-j)*第i+1个数+j*第i+2个数。  发表于 2017-9-4 10:54
  • 评论

回复 支持 反对

使用道具 举报

葛智 实名认证 番薯互助团队 文档共创团队 浪迹天涯(Lv4)
发表于 2017-9-6 11:32 | 显示全部楼层 |取消关注该作者的回复
  • 评论

回复 支持 反对

使用道具 举报

LEON_JIANG  初学乍练(Lv1)
发表于 2017-10-17 17:25 | 显示全部楼层 |取消关注该作者的回复
大神,http://bbs.fanruan.com/thread-97537-1-1.html,这个问题有解决办法么?
  • 评论

回复 支持 反对

使用道具 举报

managersky 社区微信达人 初学乍练(Lv1)
发表于 2018-2-9 14:05 | 显示全部楼层 |取消关注该作者的回复
感谢大神!不过加上下面这段后,编辑第一行之后,第19行--第28行同时也变成了红色。不知道是什么原因?
$('td[id*="'+this.options.location+'"]').css('color','rgb(230,108,32)');
截图201802091403043218.png
  • 评论

回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册  

本版积分规则

Copyright © 帆软|联系帆软| 联系管理员@兔子酱|免责声明|手机版|帆软社区 ( 苏ICP备14031611号-3 )

GMT+8, 2018-8-17 03:25 , Processed in 0.745341 second(s), 217 queries , Gzip On.

返回顶部 返回列表