本发明涉及软件开发,尤其涉及一种动态联动表单创建方法及装置。
背景技术:
1、表单在网页中主要负责数据采集功能。一个表单有三个基本组成部分:表单标签:这里面包含了处理表单数据所用cgi程序的url以及数据提交到服务器的方法。表单域:包含了文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等。表单按钮:包括提交按钮、复位按钮和一般按钮;用于将数据传送到服务器上的cgi脚本或者取消输入,还可以用表单按钮来控制其他定义了处理脚本的处理工作。
2、表单几乎存在于所有的互联网产品中,且同一个产品中可能会出现多个表单,如何低成本的动态创建功能完备且安全的表单是本领域内面临的普遍性问题,当前领域内的主流解决方案及分析如下:
3、第一种方法:数据库配置每个表单项的基本信息,但是表单项的关联关系由使用方在业务中自行编码控制;该方案在一定程度上实现了动态创建表单,但是每个业务都要自己维护一份表单之间的联动关系,使用成本比较高,无法高效复用;
4、第二种方法:数据库配置每个表单项的基本信息,同时配置表征联动关系的可执行代码串;该方案虽然可以高效低成本的复用到各个业务,但是由于配置的可执行代码串通过网络请求给web端,会存在xss攻击的问题,存在安全风险。
技术实现思路
1、为解决现有技术中存在的问题,本发明提供了一种动态联动表单创建方法及装置,在数据库中配置表单项的信息;配置表征表单项联动关系的约束字段;网页端通过网络请求得到约束字段,并通过动态循环解析约束字段实现动态联动表单。本发明在前后端的数据交互中,不会出现可执行的代码串,所以没有安全问题;整体上形成一个功能完备且安全的表单创建方法,可以动态创建功能完备的表单,且可以低成本的复用到各个业务场景,有效的降低了开发成本和后期维护成本。
2、本发明提供了一种动态联动表单创建方法,包括如下步骤:
3、在数据库中配置表单项的信息;
4、配置表征表单项联动关系的约束字段;
5、网页端通过网络请求得到约束字段,并通过动态循环解析约束字段实现动态联动表单。
6、优选地,在数据库中配置的表单项的信息包括表单id、文案和类型。
7、优选地,所述约束字段为前端与后端约定好数据结构的json变量。
8、优选地,当网页端通过网络请求拿到json变量后,根据约定好的数据结构做递归解析,生成对应的初始表单。
9、优选地,网页端通过表单项的信息,映射成对应的控件,形成可交互的表单页面。
10、优选地,网页端通过表单项的信息,匹配对应的前端组件,把表单渲染到网页上,形成可交互的表单页面。
11、优选地,当页面中表单项的值发生变化后,重新解析对应的json串,得到新的表单项集合,实现动态联动表单。
12、本发明提供了一种动态联动表单创建装置,包括处理器,所述处理器执行上述的动态联动表单创建方法进行表单创建及动态联动。
13、与现有技术相对比,本发明的有益效果如下:
14、(1)本发明通过配置json串来表征表单项的联动关系,网页端动态解析数据库中配置的json串以实现表单的创建和联动,在前后端的数据交互中,不会出现可执行的代码串,所以没有安全问题;整体上形成一个功能完备且安全的表单创建方法,可以动态创建功能完备的表单,且可以低成本的复用到各个业务场景,有效的降低了开发成本和后期维护成本;
15、(2)本发明在表单内容变化时,网页端动态循环解析json串,得到新的表单项集合,以此来实现表单联动交互,有效避免了xss攻击等安全风险,各业务可以放心使用。
1.一种动态联动表单创建方法,其特征在于,包括如下步骤:
2.根据权利要求1所述的动态联动表单创建方法,其特征在于,在数据库中配置的表单项的信息包括表单id、文案和类型。
3.根据权利要求1所述的动态联动表单创建方法,其特征在于,所述约束字段为前端与后端约定好数据结构的json变量。
4.根据权利要求3所述的动态联动表单创建方法,其特征在于,当网页端通过网络请求拿到json变量后,根据约定好的数据结构做递归解析,生成对应的初始表单。
5.根据权利要求4所述的动态联动表单创建方法,其特征在于,网页端通过表单项的信息,映射成对应的控件,形成可交互的表单页面。
6.根据权利要求1-5任一项所述的动态联动表单创建方法,其特征在于,网页端通过表单项的信息,匹配对应的前端组件,把表单渲染到网页上,形成可交互的表单页面。
7.根据权利要求6所述的动态联动表单创建方法,其特征在于,当页面中表单项的值发生变化后,重新解析对应的json串,得到新的表单项集合,实现动态联动表单。
8.一种动态联动表单创建装置,其特征在于,包括处理器,所述处理器执行权利要求1-7任一项所述的动态联动表单创建方法进行表单创建及动态联动。