Framework7 - Form 表单转 JSON
描述
Framework7 允许您使用以下方法将所有表单字段值转换为 JSON −
myApp.formToJSON(form) − 此方法接受 form 作为参数,该参数是必须转换为 JSON 的 HTMLElement 或 string 表单。此参数是必需的,此方法返回 JSON 数据。
每个输入都必须具有 name 属性,否则其值不会出现在 JSON 中。多个选择和复选框将作为数组出现在 JSON 中。
示例
以下示例演示了在 Framework7 中使用表单转 JSON −
<!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>
输出
让我们执行以下步骤来查看上述代码的工作原理 −
将上述 HTML 代码保存为服务器根文件夹中的 forms_to_json.html 文件。
以 http://localhost/forms_to_json.html 的形式打开此 HTML 文件,输出如下所示。
当您在表单中输入详细信息并单击"获取表单数据"按钮时,所有字段值都将转换为 JSON 格式并显示给您。