本文主要是介绍把form表单数据转为json,并传给父页面,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
阻止form表单提交,表单数据转为json字符串,并传给父页面
// 获取表单元素var form = document.getElementById('myForm');// 监听表单提交事件form.addEventListener('submit', function(event) {// 在这里处理表单提交的逻辑var rental_id = $("#c-id").val();if (rental_id == 0){event.preventDefault(); // 阻止表单默认提交行为}// 将表单数据转换为 JSON 对象const formData = new FormData(form);const jsonData = {};for (const [key, value] of formData.entries()) {const formattedKey = key.replace('row[', '').replace(']', '');jsonData[formattedKey] = value;}const jsonResult = JSON.stringify(jsonData);// 将 JSON 对象传递给父页面window.parent.postMessage(jsonResult, '*');});
form表单键名 没有row[ ],使用此
for (const [key, value] of formData.entries()) {jsonData[key] = value;}
父页面进行json数据接收
// 监听消息事件window.addEventListener('message', function(event) {var jsonData = event.data; // 获取传递的 JSON 数据console.log('jsonData',jsonData); // 在控制台输出 JSON 数据// 在这里可以对接收到的数据进行处理$("#c-jsonKey").val(jsonData);});
这篇关于把form表单数据转为json,并传给父页面的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!