前端动态表单的处理方法

摘要:
与下面的表格类似,如果我们事先知道表格的关键,我们可以通过正常处理表格来完成相关数据的获取。如果我们不知道表单属性键的值,也不知道相应的输入框或选择框是否事先已知,我们必须选择另一种方法来处理它。代码字段的具体值是表单的键,类型是输入框或选定框,名称可以是表单的标签。根据返回的数据周期表单,可以根据上述循环渲染方法循环动态形式。

背景:

类似于如下的表单的形式,如果我们提前知道了表单的key,那么我们就可以通过正常的处理表单形式,完成相关数据的获取。

但是,如果我们事先不知道表单的属性key值及对应的输入框还是select框, 那我们就得选择其他方式处理。

前端动态表单的处理方法第1张

 步骤一:首先,我们约定,后台返回的格式如下:

其中,code字段的具体值为表单的key,type为到底是输入框还是选择框,name可以是表单的lable。

前端动态表单的处理方法第2张

步骤二:根据返回的数据循环表单

前端动态表单的处理方法第3张

 根据数据按如上的循环渲染方式,可将动态表单循环出来。

步骤三:拿到动态表单的相关数据后,我们需要遍历给表单赋初始值。

注意,此步骤一定要做,而且得赋初始值,即使初始值为空。否则会出现,输入框里面输入不到值进而拿不到值。而且得用  $set的方法,因为此块没有双向数据绑定的效果,必须使用$set 的方式来进行赋值。

前端动态表单的处理方法第4张

步骤四:拿到form表单的值后,根据实际情况做进一步处理。

此块,我们就可以根据实际的需要进行进一步处理。

免责声明:文章转载自《前端动态表单的处理方法》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇关于浏览器对html, js,css的解析先后顺序的理解安装多个ORACLE导致多个Oracle HOME的情况!下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

缓存三大问题的解决办法

1.缓存穿透  在大多数互联网应用中,缓存的使用方式如下图所示:       当业务系统发起某一个请求时:     首先判断缓存中是否有该数据。     如果缓存中存在,则直接返回数据。     如果缓存中不存在,则再查询数据库,然后返回数据。   了解了上述过程后,下面说说缓存穿透。   1.1 缓存穿透的危害   如果存在海量请求查询根本就不存在的数据...

PetShop 4.0 详解之四(PetShop之ASP.NET缓存)

继续第四讲,转自[ http://www.cnblogs.com/YoungPeng/archive/2008/10/13/1177622.html#1339706 ] 如果对微型计算机硬件系统有足够的了解,那么我们对于Cache这个名词一定是耳熟能详的。在CPU以及主板的芯片中,都引入了这种名为高速缓冲存储器(Cache)的技术。因为Cache的存取速度比...

SQL-Redis使用详细教程

 一、Redis基础部分:  1、redis介绍与安装比mysql快10倍以上  *****************redis适用场合**************** 1.取最新N个数据的操作 2.排行榜应用,取TOP N 操作 3.需要精确设定过期时间的应用 4.计数器应用 5.Uniq操作,获取某段时间所有数据排重值 6.实时系统,反垃圾系统7.Pu...

Mysql学习总结(36)——Mysql查询优化

从事前端开发的都知道,页面显示的数据一定要及时的呈现,否则会影响用户体现.那么导致页面加载数据慢或者显示滞后的原因又是什么呢? 拿自己之前做项目经历给大家讲讲吧,之前做后台,当时的项目实时性都非常高,前端页面实时显示要求非常高 ,慢1秒显示都会导致用户的投诉,最后没办法,通过本地(磁盘)缓存跟数据表分割来解决这一问题. 原因分析 主要原因1: 后台数据库中...

后端接收前端传的数据方式

1. get方式获取:     res = request.GET.get("name",  " ")     GET提交,请求的数据会附在URL之后(就是把数据放置在HTTP协议头中),以?分割URL和传输数据,多个参数用&连接 2. 以表单方式传数据     name = request.POST.get("name", "") 3. 以jso...

MySQL数据目录更改及相关问题解决方案

步骤相关 1、停掉MySQL服务 service mysql stop 2、把旧的数据目录/var/lib/mysql备份到新的数据目录/data/mysql cp /var/lib/mysql /data -R 3、给mysql组的mysql用户赋予新的数据目录的权限 chown -R mysql:mysql /data/mysql 4、修改my.cnf...