Created
November 8, 2015 10:16
-
-
Save UlisesGascon/cd58db46ffbedc8ad1ba to your computer and use it in GitHub Desktop.
This file contains hidden or 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"> | |
<head> | |
<title>Agenda de Contactos en LocalStorage</title> | |
<meta charset=utf-8> | |
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" integrity="sha512-dTfge/zgoMYpP7QbHy4gWMEGsbsdZeCXz7irItjcC3sPUFtf0kuFbDz/ixG7ArTxmDjLXDmezHubeNikyKGVyQ==" crossorigin="anonymous"> | |
<style> | |
#contenedor { | |
width: 360px; | |
} | |
#gbotones { | |
margin-bottom: 15px; | |
} | |
.input-group { | |
margin-bottom: 5px; | |
} | |
.badge-info { | |
background-color: #5bc0de; | |
} | |
</style> | |
</head> | |
<body onload="actualizarDatos()"> | |
<div id="contenedor" class="container"> | |
<header> | |
<h3>Agenda de contactos | |
<small> LocalStorage</small> | |
</h3> | |
<hr> | |
</header> | |
<form class="form-inline"> | |
<div class="input-group"> | |
<span class="input-group-addon" id="basic-addon1">@</span> | |
<input type="text" class="form-control" placeholder="Nombre" id="nombre" aria-describedby="basic-addon1"> | |
</div> | |
<div class="input-group"> | |
<span class="input-group-addon" id="basic-addon1">0034 - </span> | |
<input type="text" class="form-control" placeholder="movil" id="movil" aria-describedby="basic-addon1"> | |
</div> | |
</form> | |
<hr/> | |
<div id="gbotones" class="btn-group" role="group" aria-label="..."> | |
<button type="button" onclick="guardarDato()" class="btn btn-info"> | |
<span class="glyphicon glyphicon-floppy-save" aria-hidden="true"></span> Guardar | |
</button> | |
<button type="button" onclick="recuperarDato()" class="btn btn-success"> | |
<span class="glyphicon glyphicon-floppy-open" aria-hidden="true"></span> Recuperar | |
</button> | |
<button type="button" onclick="eliminarDato()" class="btn btn-danger"> | |
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span> Eliminar | |
</button> | |
</div> | |
<button type="button" onclick="eliminarTodo()" class="btn btn-danger"> | |
<span class="glyphicon glyphicon-remove" aria-hidden="true"></span> Eliminar Todos | |
</button> | |
<hr> | |
<ul id="contactos" class="list-group"> | |
</ul> | |
</div> | |
</body> | |
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> | |
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js" integrity="sha512-K1qjQ+NcF2TYO/eI3M6v8EiNYZfA95pQumfvcVrTHtwQVDG+aHRqLi/ETn2uB+1JqwYqVG3LIvdm9lj6imS/pQ==" crossorigin="anonymous"></script> | |
<script type="text/javascript"> | |
function guardarDato() { | |
var nombre = document.getElementById("nombre").value; | |
var movil = document.getElementById("movil").value; | |
localStorage.setItem(nombre, movil); | |
document.getElementById("nombre").value = ""; | |
document.getElementById("movil").value = ""; | |
actualizarDatos(); | |
} | |
function recuperarDato() { | |
var nombre = document.getElementById("nombre").value; | |
localStorage.getItem(nombre); | |
document.getElementById("movil").value = localStorage.getItem(nombre); | |
} | |
function eliminarDato() { | |
var nombre = document.getElementById("nombre").value; | |
localStorage.removeItem(nombre); | |
actualizarDatos(); | |
} | |
function eliminarTodo() { | |
localStorage.clear(); | |
actualizarDatos(); | |
} | |
function actualizarDatos() { | |
var pares = ""; | |
if (localStorage.length === 0) { | |
pares += '<li class="list-group-item">Vacío</li>'; | |
} else { | |
for (var i = 0; i <= localStorage.length - 1; i++) { | |
var key = localStorage.key(i); | |
pares += '<li class="list-group-item"><span class="badge badge-info">' + localStorage.getItem(key) + '</span>' + key + '</li>'; | |
} | |
} | |
document.getElementById('contactos').innerHTML = pares; | |
} | |
</script> | |
</html> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment