页面表单处理方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:20916877 阅读:71 留言:0更新日期:2019-04-20 09:45
本发明专利技术公开了一种页面表单处理方法、装置、计算机设备及存储介质。所述方法包括:若浏览器的版本信息满足预设的版本兼容要求,则获取待提交表单中的表单控件;根据预设的控件数据表中预存的每个浏览器版本中控件名称在动态设置前后的变化关系,对每个表单控件的控件名称进行检查,若表单控件的控件名称为动态设置后的控件名称,则将该表单控件中对动态设置后的控件名称的属性定义替换为对动态设置前的控件名称的属性定义,得到更新后的待提交表单;对更新后的待提交表单进行解析,并将解析得到的表单数据发送到服务端。本发明专利技术的技术方案避免了控件名称改变导致的表单数据解析错误,提高对不兼容的浏览器版本的兼容能力。

Page Form Processing Method, Device, Computer Equipment and Storage Media

The invention discloses a page form processing method, a device, a computer device and a storage medium. The method includes: if the version information of browser satisfies the preset version compatibility requirement, the form control in the form to be submitted is acquired; according to the change relationship between the control name of each browser version in the preset control data table before and after the dynamic setting, the control name of each form control is checked, if the control name of the form control is after the dynamic setting. Control name, the property definition of the dynamically set control name in the form control is replaced by the property definition of the dynamically set control name before dynamic setting, and the updated form to be submitted is obtained; the updated form to be submitted is parsed, and the parsed form data is sent to the server. The technical scheme of the invention avoids the form data parsing error caused by the change of control name, and improves the compatibility of incompatible browser versions.

【技术实现步骤摘要】
页面表单处理方法、装置、计算机设备及存储介质
本专利技术涉及计算机
,尤其涉及一种页面表单处理方法、装置、计算机设备及存储介质。
技术介绍
随着互联网技术的不断发展,浏览器产品不仅种类繁多,而且版本更新频繁。由于信息技术更新迅速,新产品往往很难兼容旧产品的设计;摒弃一些旧的软件库,取而代之为更高效更简洁的版本,是众多浏览器产品提供商不得不采取的策略,同时,基于浏览器的Web开发也在不断跟进新的浏览器技术,这为仍在服役的老旧Web系统带来各种兼容性问题。例如,很多浏览器应用页面提供用户信息输入的功能,用户通过浏览器应用页面提供的输入框控件输入相关信息,浏览器使用本地缓存的JavaScript脚本对应用页面的Form表单进行解析后,将解析得到的表单数据提交到后台服务端进行进一步处理。然而,在有些应用场景中,输入框控件的名称不是固定的,需要通过JavaScript脚本根据应用的需要进行动态设置,以确保与服务端约定的名称一致。但是,由于浏览器版本之间的兼容性问题,对于低版本的浏览器在通过JavaScript脚本对控件名称的属性值进行动态设置后,控件名称会发生变化,导致服务端无法通过约定的控件名称属性值获取到对应的控件值。例如,对<inputtype=“text”name=“username”value=“zhangsan”>这一input控件,当通过JavaScript脚本的命令input.setAttribute('name',personname),动态改变input控件的控件名称name的属性值时,在低于IE8的浏览器版本中,该控件名称会变成submitname,即变成<inputtype=“text”submitname=“personname”value=“zhangsan”>,但由于JavaScript脚本在对该控件解析时仍然是按照原有的控件名称进行解析,导致无法向服务端传递personname=“zhangsan”的表单数据,造成服务端通过request.getParameter(“personname”)获取该表单数据失败。
技术实现思路
本专利技术实施例提供一种表单页面处理方法、装置、计算机设备及存储介质,以解决在低版本浏览器中对控件名称的属性值进行动态设置时控件名称发生改变,导致表单数据解析错误,服务端无法正确获取表单数据的问题。一种表单页面处理方法,包括:若检测到用户通过浏览器页面触发表单提交的操作,则获取所述浏览器的版本信息;若所述版本信息满足预设的版本兼容要求,则获取待提交表单中的表单控件;根据预设的控件数据表中预存的每个浏览器版本中控件名称在动态设置前后的变化关系,对每个所述表单控件的控件名称进行检查,若所述表单控件的控件名称为动态设置后的控件名称,则将该表单控件作为待处理控件,将所述动态设置后的控件名称作为目标控件名称,以及将所述目标控件名称在动态设置前的控件名称作为源控件名称;将所述待处理控件中对所述目标控件名称的属性定义替换为对所述源控件名称的属性定义,得到更新后的所述待提交表单;对更新后的所述待提交表单进行解析,并将解析得到的表单数据发送到服务端。一种表单页面处理装置,包括:版本获取模块,用于若检测到用户通过浏览器页面触发表单提交的操作,则获取所述浏览器的版本信息;控件获取模块,用于若所述版本信息满足预设的版本兼容要求,则获取待提交表单中的表单控件;检查模块,用于根据预设的控件数据表中预存的每个浏览器版本中控件名称在动态设置前后的变化关系,对每个所述表单控件的控件名称进行检查,若所述表单控件的控件名称为动态设置后的控件名称,则将该表单控件作为待处理控件,将所述动态设置后的控件名称作为目标控件名称,以及将所述目标控件名称在动态设置前的控件名称作为源控件名称;更新模块,用于将所述待处理控件中对所述目标控件名称的属性定义替换为对所述源控件名称的属性定义,得到更新后的所述待提交表单;解析模块,用于对更新后的所述待提交表单进行解析,并将解析得到的表单数据发送到服务端。一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述表单页面处理方法的步骤。一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述表单页面处理方法的步骤。上述表单页面处理方法、装置、计算机设备及存储介质中,若检测到用户通过浏览器页面触发表单提交的操作,则获取浏览器的版本信息,并在该版本信息满足预设的版本兼容要求时,根据预设的控件数据表中预存的每个浏览器版本中控件名称在动态设置前后的变化关系,对待提交表单中的表单控件的控件名称进行检查,若表单控件的控件名称为动态设置后的控件名称,则按照控件数据表中预存的变化关系,将该表单控件中对动态设置后的控件名称的属性定义替换为对动态设置前的控件名称的属性定义,得到更新后的待提交表单,使得在对更新后的待提交表单进行解析时,能够准确解析出表单数据并发送到服务端,实现了在不兼容的浏览器版本中对控件名称的属性值进行动态设置时,规避控件名称改变导致的表单数据解析错误,从而使得服务端能够正确且便捷地获取表单数据,提高对不兼容的浏览器版本的兼容能力。同时,使得老旧的Web系统不需要重新设计开发,节省了开发成本。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一实施例中页面表单处理方法的一应用环境示意图;图2是本专利技术一实施例中页面表单处理方法的一流程图;图3是本专利技术一实施例中页面表单处理方法中步骤S4的一流程图;图4是本专利技术一实施例中页面表单处理方法的步骤S1中获取浏览器的版本信息的一流程图;图5是本专利技术一实施例中页面表单处理方法中步骤S5的一流程图;图6是本专利技术一实施例中页面表单处理装置的一示意图;图7是本专利技术一实施例中计算机设备的一示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。本申请提供的页面表单处理方法,可应用在如图1所示的应用环境中,该应用环境包括服务端和客户端,其中,服务端和客户端之间通过网络进行连接,该网络可以是有线网络或者无线网络,客户端具体包括但不限于各种个人计算机、笔记本电脑、智能手机和平板电脑和便携式可穿戴设备,服务端具体可以用独立的服务器或者多个服务器组成的服务器集群实现。客户端根据浏览器的版本信息对待提交表单进行兼容性处理,并将解析后的表单数据发送到服务端,以使服务端能够正确获取表单数据。在一实施例中,如图2所示,提供一种页面表单处理方法,以该方法应用在图1中的客户端为例进行说明,详述如下:S1:若检测到用户通过浏览器页面触发表单提交的操作,则获取浏览器的版本信息。具体地,在用户根据浏览本文档来自技高网
...

【技术保护点】
1.一种页面表单处理方法,其特征在于,所述页面表单处理方法包括:若检测到用户通过浏览器页面触发表单提交的操作,则获取所述浏览器的版本信息;若所述版本信息满足预设的版本兼容要求,则获取待提交表单中的表单控件;根据预设的控件数据表中预存的每个浏览器版本中控件名称在动态设置前后的变化关系,对每个所述表单控件的控件名称进行检查,若所述表单控件的控件名称为动态设置后的控件名称,则将该表单控件作为待处理控件,将所述动态设置后的控件名称作为目标控件名称,以及将所述目标控件名称在动态设置前的控件名称作为源控件名称;将所述待处理控件中对所述目标控件名称的属性定义替换为对所述源控件名称的属性定义,得到更新后的所述待提交表单;对更新后的所述待提交表单进行解析,并将解析得到的表单数据发送到服务端。

【技术特征摘要】
1.一种页面表单处理方法,其特征在于,所述页面表单处理方法包括:若检测到用户通过浏览器页面触发表单提交的操作,则获取所述浏览器的版本信息;若所述版本信息满足预设的版本兼容要求,则获取待提交表单中的表单控件;根据预设的控件数据表中预存的每个浏览器版本中控件名称在动态设置前后的变化关系,对每个所述表单控件的控件名称进行检查,若所述表单控件的控件名称为动态设置后的控件名称,则将该表单控件作为待处理控件,将所述动态设置后的控件名称作为目标控件名称,以及将所述目标控件名称在动态设置前的控件名称作为源控件名称;将所述待处理控件中对所述目标控件名称的属性定义替换为对所述源控件名称的属性定义,得到更新后的所述待提交表单;对更新后的所述待提交表单进行解析,并将解析得到的表单数据发送到服务端。2.如权利要求1所述的页面表单处理方法,其特征在于,所述将所述待处理控件中对所述目标控件名称的属性定义替换为对所述源控件名称的属性定义,得到更新后的所述待提交表单包括:在所述待处理控件中,获取所述目标控件名称的属性值,并删除对所述目标控件名称的属性定义;在所述待处理控件中新增对预设的基础控件名称的属性定义,将所述目标控件名称的属性值赋值给所述基础控件名称;将所述待处理控件中的所述基础控件名称替换为所述源控件名称。3.如权利要求1所述的页面表单处理方法,其特征在于,所述版本信息包括浏览器类型和浏览器版本号,所述获取所述浏览器的版本信息包括:获取所述浏览器的用户代理字符串;按照所述用户代理字符串预设的信息结构,从所述用户代理字符串中提取所述浏览器类型和所述浏览器版本号。4.如权利要求3所述的页面表单处理方法,其特征在于,所述若所述版本信息满足预设的版本兼容要求,则获取待提交表单中的表单控件包括:若所述浏览器类型属于预设的目标浏览器,并且所述浏览器版本号小于预设的版本号阈值,则获取待提交表单中的表单控件。5.如权利要求1至4任一项所述的页面表单处理方法,其特征在于,所述对更新后的所述待提交表单进行解析,并将解析得到的表单数据发送到服务端包括:按照预设的验证条件,对更新后的所述待提交表单的内容进行有效性验证;若所述有效性验证通过,则从更新后的所述待提交表单的表单标签中获取所述服务端的接收地址信息,并按照更新后的所述待提交表单中每个所述表单控件的类型...

【专利技术属性】
技术研发人员:许永夫李培光
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1