在线表单中填充控件的方法和装置与流程

文档序号:12119534阅读:315来源:国知局
在线表单中填充控件的方法和装置与流程

本申请涉及计算机技术领域,尤其涉及一种在线表单中填充控件的方法和装置。



背景技术:

在线表单是指用户可以通过浏览器向服务器端提交信息,如用户注册、在线练习、在线调查表等都是在线表单的具体应用形式。在线表单可以分为在线流式表单和在线制式表单,制式表单是指内容部分和表格样式部分(例如合并单元格、拆分单元格等样式)需要同时记录的表单,区别于流式表单只需记录内容部分。这种表单常见于电子政务办公、财务报表等业务过程中。在线制式表单的绘制分为样式绘制和控件绘制两部分操作。样式绘制可以通过从Word或者Excel复制内容并粘贴到表单设计器实现。

目前的控件绘制操作以代码编程或可视化编码方式实现。前者需要表单设计者在已粘贴好的表单样式上改动代码;后者则需要用户在每个输入域上执行“拖拽添加-设置属性”的操作。

但是,目前的控件绘制操作都存在一定的问题,如,通过编码的方式在表单设计器中为表单增加控件,对用户来说技术门槛较高,而且表单设计器的初衷本就是希望通过“零编码”的形式设计可用表单,因此并不是主流的表单控件绘制方式;通过可视化的方式实现,在面对极其复杂的表单时,基于表单设计器设计一个表单往往工作量巨大。



技术实现要素:

本申请旨在至少在一定程度上解决相关技术中的技术问题之一。

为此,本申请的一个目的在于提出一种在线表单中填充控件的方法,该方法在用户需要向在线表单中填充控件时,不需要用户具有编程基础,并且可以降低用户的工作量。

本申请的另一个目的在于提出一种在线表单中填充控件的装置。

为达到上述目的,本申请第一方面实施例提出的在线表单中填充控件的方法,包括:识别待填充控件的控件类型,并获取与所述控件类型对应的控件模板;获取所述待填充控件的控件属性内容;根据所述控件模板和所述控件属性内容,生成所述待填充控件;将所述待填充控件填充到在线表单中。

本申请第一方面实施例提出的在线表单中填充控件的方法,通过识别待填充控件的控件类型,根据控件类型获取控件模板,以及获取控件属性内容,根据控件模板和控件属性内容生成待填充控件,可以实现待填充控件的自动生成,之后可以将自动生成的控件填充到在线表单中,因此在用户需要向在线表单中填充控件时,不需要用户具有编程基础,并且可以降低用户的工作量。

为达到上述目的,本申请第二方面实施例提出的在线表单中填充控件的装置,包括:第一获取模块,用于识别待填充控件的控件类型,并获取与所述控件类型对应的控件模板;第二获取模块,用于获取所述待填充控件的控件属性内容;生成模块,用于根据所述控件模板和所述控件属性内容,生成所述待填充控件;填充模块,用于将所述待填充控件填充到在线表单中。

本申请第二方面实施例提出的在线表单中填充控件的装置,通过识别待填充控件的控件类型,根据控件类型获取控件模板,以及获取控件属性内容,根据控件模板和控件属性内容生成待填充控件,可以实现待填充控件的自动生成,之后可以将自动生成的控件填充到在线表单中,因此在用户需要向在线表单中填充控件时,不需要用户具有编程基础,并且可以降低用户的工作量。

本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1是本申请一个实施例提出的在线表单中填充控件的方法的流程示意图;

图2是本申请另一个实施例提出的在线表单中填充控件的方法的流程示意图;

图3是本申请实施例中一种规则库的示意图;

图4是本申请一个实施例提出的在线表单中填充控件的装置的结构示意图;

图5是本申请另一个实施例提出的在线表单中填充控件的装置的结构示意图。

具体实施方式

下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的模块或具有相同或类似功能的模块。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。相反,本申请的实施例包括落入所附加权利要求书的精神和内涵范围内的所有变化、修改和等同物。

图1是本申请一个实施例提出的在线表单中填充控件的方法的流程示意图。

在线表单可以分为在线流式表单和在线制式表单,本实施例可以具体应用于在线制式表单中,当然,也不排除在在线流式表单中的应用。

如图1所示,本实施例的方法包括:

S11:识别待填充控件的控件类型,并获取与所述控件类型对应的控件模板。

其中,可以根据在线表单中的已有信息自动识别出待填充控件的控件类型。

具体的,可以在已有信息中提取出待填充控件对应的单元格的相关信息,再根据提取出的相关信息和预先建立的规则库,识别出待填充控件的控件类型。

待填充控件对应的单元格是指待填充控件所要填充的单元格,比如,需要在第一单元格中填充一个控件A,则当待填充控件为控件A时,控件A对应的单元格是指第一单元格。

单元格的相关信息可以包括:附近控件类型、单元格类型、关联标签(label)。

附近控件类型是指单元格周围相对最近的已知控件类型。由于控件类型是已知的,因此可以根据已知信息直接获取到附近控件类型。

单元格类型是指单元格的格式,比如数字、文本、日期等。在线制式表单中的内容可以是从word或excel中复制并粘贴的,当在内容粘贴时,会包含单元格的格式信息,因此从粘贴信息中可以获取到单元格类型。

关联标签是指特定单元格中的内容,特定单元格例如包括:当前单元格的左侧相邻单元格和上侧相邻单元格,以及,整个表单的最左上的单元格。因此,通过读取这些特定单元格中的内容可以获取到关联标签。

规则库中记录单元格的相关信息与控件类型之间的对应关系。因此,获取到单元格的相关信息后,根据该对应关系可以识别出控件类型。

在识别出控件类型后,可以从控件库中获取对应的控件模板。其中,可以预先对应每种控件类型生成相应的控件模板,并存储在控件库中。因此,当识别出控件类型后,可以在控件库中查找到识别出的控件类型对应的控件模板。

S12:获取所述待填充控件的控件属性内容。

其中,可以获取待填充控件对应的单元格内的填充内容,根据填充内容获取控件属性内容。

当从word或excel向在线制式表单中粘贴内容时,可以从粘贴内容中获取控件属性内容。

控件属性内容包括属性和属性值,属性是指单元格内填写内容的属性,比如性别、年龄、姓名、选项等,属性值是指属性的具体值,比如性别对应的单元格,如果已填写内容是“男”,则相应的属性是“性别”,属性值是“男”。

S13:根据所述控件模板和所述控件属性内容,生成所述待填充控件。

控件模板是具有一定结构的超文本标记语言(HyperText Markup Language,HTML)源码片段或者可以生成HTML源码片段的特定数据结构。在这段HTML源码片段中加入属性和属性值,就可以生成待填充控件。其中,生成的具体是页面控件源码,将页面控件源码插入到页面中就可以通过浏览器查看。另外,在生成控件时,还可以自动生成ID、控件属性设置,控件校验规则添加等。

S14:将所述待填充控件填充到在线表单中。

在填充控件时,如果控件对应单元格中无隐藏内容,则可以直接将生成的控件填充到对应的单元格中。如果该单元格中存在隐藏内容,则需要先删除隐藏内容,在单元格为空后,填充生成的控件。

具体的,可以根据单元格对应的HTML源码的标签判断单元中是否存在隐藏内容,其中标签用于标识是否存在隐藏内容,比如用标签“hidden”表示存在隐藏内容。

本实施例中,通过识别待填充控件的控件类型,根据控件类型获取控件模板,以及获取控件属性内容,根据控件模板和控件属性内容生成待填充控件,可以实现待填充控件的自动生成,之后可以将自动生成的控件填充到在线表单中,因此在用户需要向在线表单中填充控件时,不需要用户具有编程基础,并且可以降低用户的工作量。

图2是本申请另一个实施例提出的在线表单中填充控件的方法的流程示意图。

如图2所示,本实施例的方法包括:

S21:对填充域进行识别,获取单元格的相关信息。

其中,填充域是指待填充控件所要填充的单元格。

单元格的相关信息包括:附近控件类型、单元格类型、关联标签。

附近控件类型是指单元格周围相对最近的已知控件类型。由于控件类型是已知的,因此可以根据已知信息直接获取到附近控件类型。

单元格类型是指单元格的格式,比如数字、文本、日期等。在线制式表单中的内容可以是从word或excel中复制并粘贴的,当在内容粘贴时,会包含单元格的格式信息,因此从粘贴信息中可以获取到单元格类型。

关联标签是指特定单元格中的内容,特定单元格例如包括:当前单元格的左侧相邻单元格和上侧相邻单元格,以及,整个表单的最左上的单元格。因此,通过读取这些特定单元格中的内容可以获取到关联标签。

S22:根据单元格的相关信息和预先建立的规则库,确定待填充控件的控件类型。

例如,参见图3,为一种规则库,规则库中记录单元格的相关信息与控件类型之间的对应关系。因此,获取到单元格的相关信息后,根据该对应关系可以识别出控件类型。

S23:根据控件类型,从控件库中获取控件模板。

在识别出控件类型后,可以从控件库中获取对应的控件模板。其中,可以预先对应每种控件类型生成相应的控件模板,并存储在控件库中。因此,当识别出控件类型后,可以在控件库中查找到识别出的控件类型对应的控件模板。

S24:对填充域中的填充内容进行识别,获取待填充控件的控件属性内容。

在识别出控件类型后,可以从控件库中获取对应的控件模板。其中,可以预先对应每种控件类型生成相应的控件模板,并存储在控件库中。因此,当识别出控件类型后,可以在控件库中查找到识别出的控件类型对应的控件模板。

S25:根据控件模板和控件属性内容,生成页面控件。

控件模板是具有一定结构的超文本标记语言(HyperText Markup Language,HTML)源码片段或者可以生成HTML源码片段的特定数据结构。在这段HTML源码片段中加入属性和属性值,就可以生成待填充控件。其中,生成的具体是页面控件源码,将页面控件源码插入到页面中就可以通过浏览器查看。另外,在生成控件时,还可以自动生成ID、控件属性设置,控件校验规则添加等。

S26:将页面控件填充到填充域中。

在填充控件时,如果控件对应单元格中无隐藏内容,则可以直接将生成的控件填充到对应的单元格中。如果该单元格中存在隐藏内容,则需要先删除隐藏内容,在单元格为空后,填充生成的控件。

具体的,可以根据单元格对应的HTML源码的标签判断单元中是否存在隐藏内容,其中标签用于标识是否存在隐藏内容,比如用标签“hidden”表示存在隐藏内容。

本实施例中,通过识别填充域和填充内容,可以完成控件的自动生成和填充,可以以零编码的方式实现表单自动绘制,无编程门槛。以及,大大降低表单设计人员在设计表单时的工作量,尤其是在面对大型复杂表单的设计时,自动识别和生成表单控件为用户带来极大便利。

图4是本申请一个实施例提出的在线表单中填充控件的装置的结构示意图。

如图4所示,本实施例的装置40包括:第一获取模块41、第二获取模块42、生成模块43和填充模块44。

第一获取模块41,用于识别待填充控件的控件类型,并获取与所述控件类型对应的控件模板;

第二获取模块42,用于获取所述待填充控件的控件属性内容;

生成模块43,用于根据所述控件模板和所述控件属性内容,生成所述待填充控件;

填充模块44,用于将所述待填充控件填充到在线表单中。

一些实施例中,参见图5,所述第一获取模块41包括:

识别子模块411,用于根据在线表单中的已有信息,提取所述待填充控件对应的单元格的相关信息;根据所述相关信息和预先建立的规则库,识别待填充控件的控件类型,所述规则库中记录单元格的相关信息与控件类型之间的对应关系;以及,

获取子模块412,用于获取与所述控件类型对应的控件模板。

一些实施例中,所述相关信息,包括:

附近控件类型、单元格类型、关联标签。

一些实施例中,所述第二获取模块42具体用于:

获取所述待填充控件对应的单元格内的填充内容;

根据所述填充内容获取控件属性内容。

一些实施例中,所述填充模块44具体用于:

如果所述待填充控件对应的单元格内不存在隐藏内容,则将所述待填充控件直接填充到所述单元格内;或者,

如果所述待填充控件对应的单元格内存在隐藏内容,则删除所述隐藏内容,并在删除后将所述待填充控件填充到所述单元格内。

可以理解的是,本实施例的装置与上述方法实施例对应,具体内容可以参见方法实施例的相关描述,在此不再详细说明。

本实施例中,通过识别待填充控件的控件类型,根据控件类型获取控件模板,以及获取控件属性内容,根据控件模板和控件属性内容生成待填充控件,可以实现待填充控件的自动生成,之后可以将自动生成的控件填充到在线表单中,因此在用户需要向在线表单中填充控件时,不需要用户具有编程基础,并且可以降低用户的工作量。

可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。

需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。

应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1