-
-
Save parzibyte/d756a0ca64e7614baa5bcad6091463de to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<!doctype html> | |
<html lang="es"> | |
<!-- | |
Demostrar la validación de VeeValidate | |
(plugin para Vue.js) | |
Plantilla inicial de Bootstrap 4 | |
@author parzibyte | |
Visita: parzibyte.me/blog | |
--> | |
<head> | |
<meta charset="utf-8"> | |
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> | |
<meta name="description" content="Validación de formularios con VeeValidate"> | |
<meta name="author" content="Parzibyte"> | |
<title>Validación de formularios con VeeValidate</title> | |
<!-- Cargar el CSS de Boostrap--> | |
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous"> | |
</head> | |
<body> | |
<main role="main" class="container"> | |
<div class="row" id="app"> | |
<!-- Aquí pon las col-x necesarias, comienza tu contenido, etcétera --> | |
<div class="col-12"> | |
<h1>Validación de formularios con VeeValidate</h1> | |
<a target="_blank" href="//parzibyte.me/blog">By Parzibyte</a> | |
<div class="form-group"> | |
<input name="nombre" autocomplete="off" class="form-control" v-validate="'required'" v-model="usuario.nombre" type="text" placeholder="Nombre completo" /> | |
<div class="invalid-feedback"> | |
{{errors.first('nombre')}} | |
</div> | |
</div> | |
<div class="form-group"> | |
<input name="edad" autocomplete="off" class="form-control" v-validate="'required|numeric|min_value:18'" v-model.number="usuario.edad" type="text" placeholder="Edad" /> | |
<div class="invalid-feedback"> | |
{{errors.first('edad')}} | |
</div> | |
</div> | |
<div class="form-group"> | |
<input name="correo" autocomplete="off" class="form-control" v-validate="'required|email'" v-model.number="usuario.correo" type="email" placeholder="Correo electrónico" /> | |
<div class="invalid-feedback"> | |
{{errors.first('correo')}} | |
</div> | |
</div> | |
<div class="form-group"> | |
<textarea class="form-control" v-validate="'required|prohibirPalabras:foo,bar,baz'" placeholder="Biografía" v-model="usuario.biografia" name="biografia" cols="20" rows="5"></textarea> | |
<div class="invalid-feedback"> | |
{{errors.first('biografia')}} | |
</div> | |
</div> | |
<div v-show="errors.all().length" class="alert alert-danger"> | |
<ul> | |
<li v-for="(error, i) in errors.all()">{{error}}</li> | |
</ul> | |
</div> | |
<button class="btn btn-success mb-5" @click="intentarEnviar">Enviar</button> | |
</div> | |
</div> | |
</main> | |
<script src="https://unpkg.com/vue@2.6.10/dist/vue.min.js"> | |
</script> | |
<script src="https://unpkg.com/vee-validate@2.2.9/dist/vee-validate.js"> | |
</script> | |
<script src="https://unpkg.com/vee-validate@2.2.9/dist/locale/es.js"> | |
</script> | |
<script src="script.js"></script> | |
</body> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment