Framework7 - Formulario a JSON
Descripción
Framework7 le permite convertir todos los valores de campo de formulario a JSON utilizando el siguiente método:
myApp.formToJSON(form)- Este método acepta el formulario como parámetro, que es un elemento HTMLE o una cadena de formulario que debe convertirse a JSON. Este parámetro es obligatorio y este método devuelve datos JSON.
Cada entrada debe tener el atributo de nombre ; de lo contrario, su valor no aparecerá en JSON. Múltiples selecciones y casillas de verificación aparecerán como matrices en JSON.
Ejemplo
El siguiente ejemplo demuestra el uso de formulario para JSON en Framework7:
<!DOCTYPE html>
<html>
<head>
<meta name = "viewport" content = "width = device-width, initial-scale = 1,
maximum-scale = 1, minimum-scale = 1, user-scalable = no, minimal-ui" />
<meta name = "apple-mobile-web-app-capable" content = "yes" />
<meta name = "apple-mobile-web-app-status-bar-style" content = "black" />
<title>Checkboxes group</title>
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.min.css" />
<link rel = "stylesheet"
href = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/css/framework7.ios.colors.min.css" />
</head>
<body>
<div class = "views">
<div class = "view view-main">
<div class = "pages">
<div data-page = "home" class = "page navbar-fixed">
<div class = "navbar">
<div class = "navbar-inner">
<div class = "left"> </div>
<div class = "center">Form To JSON</div>
<div class = "right"> </div>
</div>
</div>
<div class = "page-content">
<form id = "my-form" class = "list-block">
<ul>
<li>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title label">Name</div>
<div class = "item-input">
<input type = "text" name = "name" placeholder = "Enter your name">
</div>
</div>
</div>
</li>
<li>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title label">E-mail</div>
<div class = "item-input">
<input type = "email" name = "email" placeholder = "Enter your e-mail">
</div>
</div>
</div>
</li>
<li>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title label">Gender</div>
<div class = "item-input">
<select name = "gender">
<option value = "male" selected>Male</option>
<option value = "female">Female</option>
</select>
</div>
</div>
</div>
</li>
<li>
<div class = "item-content">
<div class = "item-inner">
<div class = "item-title label">Switch</div>
<div class = "item-input">
<label class = "label-switch">
<input type = "checkbox" name = "switch" value = "yes" />
<div class = "checkbox"></div>
</label>
</div>
</div>
</div>
</li>
</ul>
</form>
<div class = "content-block"><a href = "#" class = "button button-fill button-round color-red form-to-json">Get Form Data</a></div>
</div>
</div>
</div>
</div>
</div>
<script type = "text/javascript"
src = "https://cdnjs.cloudflare.com/ajax/libs/framework7/1.4.2/js/framework7.min.js"></script>
<script>
var myApp = new Framework7();
var $$ = Dom7;
$$('.form-to-json').on('click', function() {
var formData = myApp.formToJSON('#my-form');
alert(JSON.stringify(formData));
});
</script>
</body>
</html>
Salida
Realicemos los siguientes pasos para ver cómo funciona el código dado anteriormente:
Guarde el código HTML proporcionado anteriormente como forms_to_json.html archivo en la carpeta raíz de su servidor.
Abra este archivo HTML como http: //localhost/forms_to_json.html y la salida se muestra como se muestra a continuación.
Cuando ingrese sus datos en el formulario y haga clic en el botón 'Obtener datos del formulario', todos los valores de sus campos se convertirán al formato JSON y se le mostrarán.