用js编写,自动生成一个表单。按照表单数据保存的分析,创建对象,保存相关数据。

本文介绍如何利用JavaScript编程动态生成一个包含用户名、密码和确认密码输入框的表单,并探讨如何根据表单数据创建对象以保存相关用户信息。
摘要由CSDN通过智能技术生成

 var elements = [
    {tag: 'input', text: '用户名', attr: {type: 'text', name: 'username'}},
    {tag: 'input', text: '密码', attr: {type: 'password', name: 'userpass'}},
    {tag: 'input', text: '确认密码', attr: {type: 'password', name: 'userpass_confirm'}},
    {tag: 'input', attr: {type: 'submit', value: '提交'}}
];

 <style>
    *{
      margin: 0;
      padding: 0;
      box-sizing: border-box;
    }
    .custom-form{
      width: 400px;
      padding-bottom: 20px;
      margin: 100px auto 0;
      border: 1px solid #2487c9;
      display: flex;
      flex-direction: column;
    }
    .form-title{
      padding: 10px 0;
      margin-bottom: 20px;
      font-size: 18px;
      color: #fff;
      text-align: center;
      background-color: #2487c9;
    }
    .form-label{
      display: flex
假设你的动态生成表单中每一行都是一个表格<tr>,每一行中有一个单选框<input type="radio">作为选择器,以下是一种实现方式: 1. 给每一个单选框添加一个点击事件,当用户点击单选框时触发事件。 例如,给单选框添加一个名为"selectRow"的class,并且使用addEventListener()添加事件监听器: ``` var radioButtons = document.querySelectorAll('.selectRow'); // 获取所有单选框 for (var i = 0; i < radioButtons.length; i++) { radioButtons[i].addEventListener('click', function() { // 在这里编写获取数据的代码 }); } ``` 2. 当用户点击单选框时,获取该单选框所在的表格行<tr>元素。 例如,可以使用parentNode属性获取单选框所在的表格单元格<td>,再使用parentNode再次获取表格行<tr>: ``` var selectedRow = this.parentNode.parentNode; ``` 3. 获取该表格行中的数据,并且执行需要的操作。 例如,可以使用querySelector()方法获取该表格行中需要的数据,例如表格中第二列的数据,然后将数据显示在页面上: ``` var data = selectedRow.querySelector(':nth-child(2)').textContent; document.querySelector('#result').innerHTML = '你选择的数据是:' + data; ``` 完整代码: ``` var radioButtons = document.querySelectorAll('.selectRow'); // 获取所有单选框 for (var i = 0; i < radioButtons.length; i++) { radioButtons[i].addEventListener('click', function() { var selectedRow = this.parentNode.parentNode; // 获取表格行 var data = selectedRow.querySelector(':nth-child(2)').textContent; // 获取第二列数据 document.querySelector('#result').innerHTML = '你选择的数据是:' + data; }); } ``` 其中,#result是用于显示结果的元素id,你可以根据需要修改。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值