vue-form表单验证插件
参考地址:https://segmentfault.com/q/1010000003988864
github地址:https://github.com/fergaldoyle/vue-form
安装插件
cnpm install vue-form --save
使用,在main.js里加入
import VueForm from 'vue-form'
Vue.use(VueForm)
代码实战
<template>
<div class="login__content">
<vue-form :state="formstate" v-model="formstate">
<div class="login__title">SIGN IN</div>
<div class="login__content_input username__margin_bottom">
<validate auto-label class="form-group required-field" :class="fieldClassName(formstate.name)">
<input type="text" name='name' placeholder="Username" required v-model="model.name"/>
</validate>
<field-messages name="name" v-show="isSubmit">
<!--<div class="success__msg"></div>-->
<div class="error__msg" slot="required">Username is a required field</div>
</field-messages>
</div>
<div class="login__content_input">
<validate auto-label class="required-field" :class="fieldClassName(formstate.password)">
<input type="password" name="password" placeholder="Password" required v-model="model.password" />
</validate>
<field-messages name="password" v-show="isSubmit" >
<!--<div class="success__msg"></div>-->
<div class="error__msg" slot="required">Password is a required field</div>
</field-messages> </div>
<div class="error__msg" v-if='errorMsg["fail"]'>{{errorMsg["fail"]}}</div>
<div class="login__in_part">
<div class="forgot__password">
<a >Forgot Password</a>
</div>
<div class="login__remember">
<label><input type="checkbox" v-model="isRemember" /> Remember me</label>
</div>
<div class="login__in">
<button class="signin" @click.prevent="login" >SIGN IN</button>
</div>
</div>
<div class="sign__register">Don't have an account? <a href="#" >Sign Up</a> </div>
</vue-form>
</div>
</template>
<script>
import config from '../../utils/config.js'
export default{
data(){
return{
formstate: {},
errorMsg:{},
isSubmit:false,
isRemember:true,
model:{
name:'',
password:''
}
}
},
methods:{
fieldClassName: function (field) {
if(!field) {
return '';
}
if((field.$touched || field.$submitted) && field.$valid && !this.errorMsg["fail"]) {
return 'has-success';
}
if((field.$touched || field.$submitted) && field.$invalid && this.errorMsg["fail"]) {
return 'has-danger';
}
},
login(){
this.isSubmit=true;
if(this.formstate.$valid===false){
return
}
let o={
email:this.model.name,
password:this.model.password
}
this.$axios.post(`${config.apiPreUrl}/login/getToken`, o).then((res)=>{
console.log(res.data);
})
}
}
}
</script>
<style lang="scss" >
.login__content{
width: 452px;
height: 495px;
background: white;
position: relative;
box-shadow: 0px 0px 14px #423D40;
padding: 0 44px 0 43px;
}
.login__title{
padding: 56px 0 27px 0px;
font-size: 18px;
color: #3A3A3A;
font-weight: bolder;
}
.login__content_input{
width: 365px;
position: relative;
input{
height: 48px;
padding: 0 8px;
background-color: #ffffff;
padding-left: 15px;
width: 100%;
outline: none;
font-size: 15px;
border: solid 1px #C4C4C4;
&:hover{
border: solid #C4C4C4 1px;
box-shadow:0 0 3px rgba(136,136,136,0.7);
}
}
}
.username__margin_bottom{
margin-bottom: 25px;
}
.forgot__password{
font-size: 11px;
padding: 9px 0 0 4px ;
a{
color:#E25043;
cursor: pointer;
}
}
.login__remember{
padding: 29px 0;
font-size: 11px;
color: #707D95;
font-weight: lighter;
input{
margin-top:0px !important;
margin-right: 5px;
vertical-align: middle;
}
}
.login__in_part{
padding-left: 4px;
}
.login__in{
height: 44px;
button{
width: 50%;
height: 44px;
color: #000;
border: 0;
background: #E25043;
color: #ffffff;
font-size: 12px;
}
}
.sign__register{
padding: 29px 0 0 6px;
color: #4A4A4A;
font-size: 12px;
a{
color: #E25043;
text-decoration: none;
}
}
.error__msg{
color: #E25043;
font-size: 13px;
padding: 7px 0 0 0 ;
}
.has-danger{
border: solid 1px #EB7057!important;
}
.has-success{
border: solid 1px #43C7A9 !important;
}
.has-normal{
border:solid #C4C4C4 1px!important;
}
</style>
vue-form表单验证插件的更多相关文章
- jquery plugin 之 form表单验证插件
基于h5表单验证系统.扩展了对easyui组件的支持 先上图: 提示样式用到了伪对象的 {content: attr(xxx)}函数方法,实现提示信息能动态切换. 1.关键属性说明: type: 表单 ...
- vue form表单验证
<el-select v-model="ruleForm.region" placeholder="请选择活动区域"> <el-option ...
- [php基础]PHP Form表单验证:PHP form validator使用说明
在PHP网站开发建设中,用户注册.留言是必不可少的功能,用户提交的信息数据都是通过Form表单提交,为了保证数据的完整性.安全性,PHP Form表单验证是过滤数据的首要环节,PHP对表单提交数据的验 ...
- 写一个简单易用可扩展vue表单验证插件(vue-validate-easy)
写一个vue表单验证插件(vue-validate-easy) 需求 目标:简单易用可扩展 如何简单 开发者要做的 写了一个表单,指定一个name,指定其验证规则. 调用提交表单方法,可以获取验证成功 ...
- vue elementui form表单验证
最近我们公司将前端框架由easyui 改为 vue+elementui .自学vue两周 就开始了爬坑之路.业余时间给大家分享一下心得,技术新手加上第一次分享(小激动),有什么不足的地方欢迎大家指正, ...
- jquery validate表单验证插件-推荐
1 表单验证的准备工作 在开启长篇大论之前,首先将表单验证的效果展示给大家. 1.点击表单项,显示帮助提示 2.鼠标离开表单项时,开始校验元素 3.鼠标离开后的正确.错误提示及鼠标移入时的帮 ...
- 表单验证插件之jquery.validate.js
提到表单验证的插件,第一个想到的就是jquery.validate.js,所以小生想在这里稍微详细地说一下这款插件的具体使用方法,便于理解,我直接附上整段demo的代码(没怎么调样式,主要是看js): ...
- jQuery学习之:Validation表单验证插件
http://polaris.blog.51cto.com/1146394/258781/ 最近由于公司决定使用AJAX + Struts2来重构项目,让我仔细研究一下这两个,然后集中给同事讲讲,让每 ...
- jquery validate表单验证插件
1 表单验证的准备工作 在开启长篇大论之前,首先将表单验证的效果展示给大家. 1.点击表单项,显示帮助提示 2.鼠标离开表单项时,开始校验元素 3.鼠标离开后的正确.错误提示及鼠标移入时的帮 ...
- JS表单验证插件(支持Ajax验证)
自己编写了一个表单验证插件,支持ajax验证,使用起来很简单. 每个需要验证的表单元素下面有一个span标签,这个标签的class有一个valid表示需要验证,如果有nullable则表示可为空:ru ...
随机推荐
- Window环境下Python和Django的安装,以及项目的创建
1.首先我们要下载python和Django,他们的下载地址如下 python地址:https://www.python.org/ Django地址: https://www.djangoproje ...
- HTTPS好文推荐
认真看完这几篇文章,HTTPS相关内容应该就能大概了解了. 1.https(ssl)协议以及wireshark抓包分析与解密 2.数字证书原理 3.也许,这样理解HTTPS更容易 4.SSL/TLS原 ...
- ARP协议,以及ARP欺骗
1.定义: 地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议.主机发送信息时将包含目标IP地址的ARP请求广播到网络上 ...
- webpack异步加载业务模块
虽然把我们用到的JS文件全部打包一个可以节省请求数,但如果打包后的JS文件过大,那么也容易出现白屏现象,许多操作失灵.而且一些区域是点到才出现,那么相关的JS其实可以剥离出这个大JS文件外.这就涉及到 ...
- numpy-帮助文档 & 速查表.md
目录 转相关资料: 速查表 速查代码 转相关资料: 官方手册 易佰教程 gitbook ZMonster's Blog 速查表 速查代码 # -*- coding: utf-8 -*- "& ...
- MySQL 服务无法启动
拷贝的mysql数据库配置文件的路径网络更改
- 学习JS的心路历程-类型
前言 之前学JS时候都是靠着谷狗一路跌跌撞撞的学过来,从来没有去翻过MDN的文件,导致留了许多技术债给自己. 最近有幸遇到一位前辈并开始从头学JS,前辈表示学程序不看文件是想作死自己?于是我的第一份功 ...
- Applese走方格-dfs
链接:https://ac.nowcoder.com/acm/contest/330/B来源:牛客网 题目描述 精通程序设计的 Applese 又写了一个游戏. 在这个游戏中,它位于一个 n 行 m ...
- SpringBoot 热启动
在开发过程中,当写完一个功能我们需要运行应用程序测试,可能这个小功能中存在多个小bug,我们需要改正后重启服务器,这无形之中拖慢了开发的速度增加了开发时间,SpringBoot提供了spring-bo ...
- Loading AssetBundle Manifests
[Loading AssetBundle Manifests] AssetBundle Manifest 可以用于获取dependency. AssetBundle assetBundle = Ass ...