`

移动端报表JS开发示例--获取定位

阅读更多

 上次分享了移动端报表JS开发的系统概念,后来我又回去摸索了一些案例。之前接触到的FineReportAPP客户端可以用来打卡签到,就好奇研究了以下,这次就来聊一聊报表移动端开发如何实现定位功能。

1. 解决思路

 在用FineReport设计模板的时候添加一个按钮控件,点击该按钮的时候,获取当前地理位置,并将该位置信息复制给某个单元格,最后在客户端填报当前模板即可。

2. 示例

 实现如下图所示效果,点击地理位置按钮获取当前位置与当前时间,并显示在下方对应的单元格中:

2.1 模板制作

 

打开设计器,新建一张模板,按照如下图所示样式设计模板,其中E2单元格为按钮控件,控件名称为地理位置,C5为下拉框控件,E5为时间控件:

2.2 获取当前地理位置

 

获取当前地理位置有两种方式,一个是点击按钮获取地理位置,一个是直接打开模板的时候就获取位置,示例中,我们是想实现通过点击按钮获取地理位置。

通过点击按钮获取地理位置

打开按钮的控件设置,为该控件添加一个点击事件,如下图:

js如下:

1.	FR.location(function(status, message){ //获取地理位置  
2.	if(status=="success") {  
3.	    //定位成功,message返回经纬度值  
4.	    FR.Msg.alert("当前位置是" + message);  
5.	    contentPane.setCellValue(2, 3, message);      
6.	} else {  
7.	    //定位失败,message返回对应的错误信息  
8.	    FR.Msg.alert(message); //定位失败  
9.	}  
10.	});  

 FineReport通过FR.location方法获取当前位置,如果status值为success,则表示获取地理位置成功否则定位失败,如果定位成功,则将返回的地理位置信息赋值给C4单元格。

但是该方法只在移动端有用,如果在web点击该按钮事件获取地理位置,则直接提示定位失败。

加载结束后获取当前位置

如果想在模板加载结束之后就获取到当前地理位置,那么只需要将上述代码添加到加载结束后事件中即可,打开模板,点击模板>模板web属性>填报页面设置,添加一个加载结束事件,如下图:

2.3 获取当前时间

 

在模板中还需要将当前签到时间也赋值过去,所以还需要在按钮的点击事件中获取到当前时间,并赋值给E4单元格,js如下:

11. var myDate = new Date();  

12. var mytime=myDate.getFullYear()+"-"+myDate.getMonth()+1+"-"+myDate.getDate()+" "+myDate.getHours()+":"+myDate.getMinutes()+":"+myDate.getSeconds(); //获取当前时间  

13. contentPane.setCellValue(4, 3, mytime);   

 

按钮点击事件全部js如下:

14. FR.location(function(status, message){ //获取地理位置  

15. if(status=="success") {  

16.     //定位成功,message返回经纬度值  

17.     FR.Msg.alert("当前位置是" + message);  

18.     contentPane.setCellValue(2, 3, message);   

19.     var myDate = new Date();  

20.     var mytime=myDate.getFullYear()+"-"+myDate.getMonth()+1+"-"+myDate.getDate()+" "+myDate.getHours()+":"+myDate.getMinutes()+":"+myDate.getSeconds(); //获取当前时间  

21.     contentPane.setCellValue(4, 3, mytime);   

22.   

23. } else {  

24.     //定位失败,message返回对应的错误信息  

25.     FR.Msg.alert(message); //定位失败  

26. }  

27. });  

 2.4 效果查看

 

将该模板添加到数据决策系统的节点树上,其操作方法请查看添加模板,其中模板的预览方式为填报,如下图:



 

根据添加服务器章节介绍的操作步骤,用移动端登录该系统,访问该张模板,点击地理位置按钮获取当前地理位置和当前时间,如下图:

 

但是,FineReport获取到的地理位置是经纬度,如需要确定其具体位置,就需要另外转换。

   移动端的开发还在持续学习中,感兴趣的朋友可以和我一起探讨研究。

  • 大小: 3 KB
  • 大小: 4.6 KB
  • 大小: 23.1 KB
  • 大小: 48.7 KB
  • 大小: 39.6 KB
  • 大小: 11.3 KB
分享到:
评论

相关推荐

    报表开发工具Finereport移动端app js接口列表【全】

    根据提供的文件信息,我们整理出以下关于报表开发工具FineReport移动端app js接口列表的详细知识点: ### FineReport移动端JS接口概览 #### FineReport移动端支持调用JS的位置 - web事件:包括分页、预览、填报...

    Calendar移动端日历插件

    在移动应用开发中,日历插件是一种常见且重要的组件,尤其在JavaScript开发中,它为用户提供了方便的方式来查看和管理日期相关的事件。"Calendar 移动端日历插件"是一个专为移动设备设计的JavaScript日历解决方案,...

    基于umi+antd-mobile的移动端项目模板

    "基于umi+antd-mobile的移动端项目模板"是一个针对移动端应用开发的高效解决方案,它结合了两个强大的工具:umi框架和antd-mobile组件库。这个模板提供了一个快速启动的项目结构,旨在帮助开发者更高效地构建高质量...

    微信小程序-微信小程序-微信小程序-移动端商城小程序项目源码-原生开发框架-含效果截图示例.zip

    微信小程序,作为腾讯倾力打造的一款轻量级应用,凭借其独特的优势在移动开发领域崭露头角。它无需下载安装,用户扫一扫或搜一下即可打开应用,体验上更加便捷高效。小程序不仅拥有近似原生App的用户体验,还完美...

    微信小程序-移动端商城小程序项目源码-原生开发框架-含效果截图示例.zip

    现在,我们为您提供了微信小程序的项目源码,包括原生开发框架和效果截图示例。这份资源不仅能让您深入了解微信小程序的开发流程,还能直接复用其中的代码和设计,加速您的项目开发进程。无论是个人学习还是企业项目...

    relation-graph图谱移动端适配拖动修复代码

    7. **错误处理和调试**:在开发过程中,要关注可能出现的兼容性问题,尤其是在不同设备和浏览器上的表现。使用开发者工具的模拟器和远程调试功能可以帮助定位和解决问题。 在名为`relation-graph`的压缩包文件中,...

    HUI 移动端UI开发框架3.0.zip

    - `js` 文件夹存放JavaScript代码,包括框架的核心库和可能的插件脚本。 - `css` 文件夹包含了CSS样式表,用于定义界面的样式和布局。 - `demo` 文件夹提供了更多组件的演示,帮助开发者更直观地学习和运用HUI。 ...

    微信小程序-微信小程序移动端商城小程序项目源码-原生开发框架-含效果截图示例.zip

    现在,我们为您提供了微信小程序的项目源码,包括原生开发框架和效果截图示例。这份资源不仅能让您深入了解微信小程序的开发流程,还能直接复用其中的代码和设计,加速您的项目开发进程。无论是个人学习还是企业项目...

    ACCESS数据库示例-C_源代码

    ACCESS数据库示例-C_源代码 ACCESS数据库示例-C_源代码

    移动端日历calendar-原生js

    在移动端开发中,日历组件是一个非常常见的需求,它用于展示日期并允许用户进行选择或交互。本项目名为“移动端日历calendar-原生js”,它完全基于JavaScript(不依赖任何第三方库)来实现,提供了丰富的功能,如...

    移动端H5前端设计项目源码

    JavaScript允许开发人员添加交互性,比如表单验证、动画效果、响应用户事件等。在H5项目中,JavaScript通常与HTML和CSS(样式表)配合工作,构成前端的“三位一体”技术栈。 `JS`、`CSS`和`style`目录分别包含了...

    BI示例-中国式报表可视化分析

    BI示例-中国式报表可视化分析

    移动端图片浏览示例

    在移动端应用开发中,图片浏览是一个非常常见的需求,特别是在社交平台或者个人相册类应用中。"移动端图片浏览示例" 提供了一种解决方案,它借鉴了QQ空间和微信朋友圈的图片浏览体验,旨在为用户提供流畅且交互丰富...

    js移动端整页滑屏示例

    原生js移动端整屏滑动效果,上下滑屏。兼容Android,ios

    移动端H5开发 Turn.js实现很棒的翻书效果

    总而言之,Turn.js是一款优秀的JavaScript库,特别适合用于移动端H5开发中实现翻书效果。它不仅支持在浏览器上运行,还能在iOS和Android等移动设备上提供良好的交互体验。通过本文的介绍,相信开发者们可以更好地...

    移动端报表使用教程【1】如何添加服务器

    在移动端查看报表之前,我们需要准备和执行一系列操作。首先,必须下载适用于手机端的报表软件应用程序。以FineReport报表工具为例,这个过程涉及在Android的Google Play商店或iOS的App Store中搜索并下载应用程序。...

    移动端接口文档示例

    ### 移动端接口文档示例解析 #### 一、用户接口 在移动应用开发过程中,用户接口的设计至关重要,它不仅决定了用户与系统的交互方式,还直接影响着用户体验的好坏。以下将详细介绍“用户接口”部分的相关知识点。 ...

    c#移动端开发之Xamarin-http post get请求

    本示例关注的是Xamarin移动端开发中的HTTP POST和GET请求,这是任何网络应用基础通信的关键部分。 首先,让我们深入理解HTTP(超文本传输协议)的基本概念。HTTP是互联网上应用最广泛的一种网络协议,用于从万维网...

Global site tag (gtag.js) - Google Analytics