React实例----一个表单验证比较复杂的页面
前言:这阵子看了两本CSS的书~对于CSS层叠,定位,继承等机制基本上都了解了,就想着自己写几个页面~正好自己就写了写CSS样式,然后用React渲染出来~
闲话不多说,简单说一说这个页面,希望能对大家有些帮助;
代码已经上传到GitHub,地址为:https://github.com/sven36/React
这个地址可以看一下效果:https://sven36.github.io/React/React.html
这里简单说一下:页面比较简单,麻烦的地方在于输入框特别多,而且表单验证规则比较繁琐,比如输入框失去焦点要对当前内容进行判断,不符合规则边框标红,选择单身则配偶信息不允许操作,还有需要输入数字的,自动保留两位小数,有的输入只允许中文等等;
这些代码基本上都在Input这个组件里面写的;就在sk.js这个文件;bundle.js是webpack编译的reat代码,有环境的可以编译一下;
其实我在这个过程中,感觉最值得仔细思考的是React的组件化思想;就是这些html元素应该如何组合,哪些元素应该是一个组件,以达到组件复用;
在页面前三分之一,我是只用input一个组件,每一行基本都是<dd><ul><li><Input (React组件)/></li></ul><dd>这样的结构,最后一部分我把ul封装成一个组件<dd><Ul (React组件) /></dd> ; <Ul (React组件) />又根据传入参数不同渲染成<li><Input (React组件)/></li>
或<li><Select(React组件)/></li>组件;这部分大家感兴趣可以看一下;
还有就是CSS样式也是适配主流浏览器的~针对Ie8等版本落后的浏览器我也添加了一些回退样式,保证效果不会太差~
React实例----一个表单验证比较复杂的页面的更多相关文章
- jquery做一个表单验证
正则表达式的写法: var re=new RegExp('规则', '可选参数');var re=/规则/参数;(这个最常用) 正则表达式的规则 和其他语言的正则表达式规则一样,可以参考我的另一边博文 ...
- 实例讲解表单验证插件Validation的应用
jquery.Validation是一款优秀的jquery插件,它能对客户端表单进行验证,并且提供了许多可以定制的属性和方法,良好的扩展性.现在 结合实际情况,我把项目中经常要用到的验证整理成一个实例 ...
- javascript:正则表达式、一个表单验证的例子
本文内容: 正则表达式 正则表达式的使用方法 正则表达式的特殊匹配字符 正则表达式修饰符 利用正则表达式进行表单验证的例子 首发日期:2018-05-13 正则表达式: 正则表达式的使用方法: 首先创 ...
- 6.4-6.5 使用form表单验证,完善登录页面
之前是使用自定义的类来实现登录逻辑,现在使用django内置的form表单验证,用继承django的view来实现登录页面. users > views.py 的内容是: from django ...
- angular表单验证实例----可用的代码
前段时间,公司做一个单页面,就是一个表单验证,早开始在菜鸟教程上关注了angular,所以下派上用场了 angular里面对于表单验证,设置了很多指令. 也就是说不用自己写一些逻辑,直接绑定指令就行. ...
- es6 封装一个基础的表单验证
1, 需求分析 设计一个通用的表单验证,如果后期表单中添加了更多的需求,不需要更改之前的代码逻辑,最好不要改之前的代码,需要加什么直接加就好了. 2,代码分析 此表单验证最好返回一个函数,在api设计 ...
- [php基础]PHP Form表单验证:PHP form validator使用说明
在PHP网站开发建设中,用户注册.留言是必不可少的功能,用户提交的信息数据都是通过Form表单提交,为了保证数据的完整性.安全性,PHP Form表单验证是过滤数据的首要环节,PHP对表单提交数据的验 ...
- 如何优雅的使用 Angular 表单验证
随便说说,这一节可以跳过 去年参加 ngChine 2018 杭州开发者大会的时候记得有人问我: Worktile 是什么时候开始使用 Angular 的,我说是今年(2018年) 3 月份开始在新模 ...
- jQuery框架学习第十一天:实战jQuery表单验证及jQuery自动完成提示插件
jQuery框架学习第一天:开始认识jQueryjQuery框架学习第二天:jQuery中万能的选择器jQuery框架学习第三天:如何管理jQuery包装集 jQuery框架学习第四天:使用jQuer ...
随机推荐
- HUST 1602 Substring
水题. #include<cstdio> #include<cstring> #include<cmath> #include<string> #inc ...
- AFNetWorking发送post请求,Code=-1016错误
使用AFNetWorking发送post请求时,可能会出现下面Code=-1016问题.打印的error如下: Error:Error Domain=com.alamofire.error.seria ...
- VS2010下创建的VB.NET项目打包发布安装包的流程
VS2010下创建的VB.NET项目打包发布安装包的流程 参考:http://blog.csdn.net/liuyanlinglanq/article/details/8609675 关于relea ...
- UE4上传图片到服务器
客户端代码: void AHttpTestCharacter::MyHttpCall(FString Url){ // TexturePath contains the local file full ...
- JS脚本语言(全称java script:网页里使用的脚本语言:非常强大的语言):基础语法
一.注释语法 1.单行注释// 2.多行注释/**/ 二.语法输出 1.alert(信息):弹出信息 2.confirm(信息):弹出一个和用户交互的对话框 3.prompt(信息):弹出一个可以让用 ...
- Binary转换成Hex字符串
想调优别人的代码,网上搜索一下Binary to Hexstring的转换,全是利用printf.scanf之类实现的,效率好低,还是自己想个简单的办法吧! .......此处省略一万字....... ...
- Ehcache jgroups方式同步缓存出现问题总结
ehcache配置文件按官网配置如下: <?xml version="1.0" encoding="UTF-8"?> <ehcache> ...
- 反射机制(实例化Class)对象
反,就是利用对象找到对象的出处 Object类中有一个方法,getClass() Date date = new Date(); System.out.println(date.getClass()) ...
- spring.net的基本搭建
这几天在学C#,感觉还是需要一个控制反转的框架,正好Spirng也有.net版的,看着API搭建一个 大致目录是这样的,我们在APP.CONFIG里面配好xml文件的地址,这个APP.CONFIG就相 ...
- python中使用urllib2伪造HTTP报头的2个方法
在采集网页信息的时候,经常需要伪造报头来实现采集脚本的有效执行 下面,我们将使用urllib2的header部分伪造报头来实现采集信息 方法1. ? 1 2 3 4 5 6 7 8 9 10 11 1 ...