javascript - 使用纯 JS 提交时向 DOM 添加数据

标签 javascript html dom submit frontend

谁能告诉我实现相同目标的最佳方法是什么here用这个 js:

function ContactController($scope) {
   $scope.contacts = ["hi@me.no", "hi@you.com"];
    $scope.addMail = function() {
        if(this.mailAdress) {
          $scope.contacts.push($scope.mailAdress);
          $scope.mailAdress = "";
        }
      };
    }

不使用 Angular。我只是想学习如何使用 javascript 将用户输入保存到 DOM。谢谢!

最佳答案

同样的方法之一是

  var contacts = ["hi@me.no", "hi@you.com"],
        ul = document.querySelectorAll('.email-list')[0];

  // Iterate over the contacts and append it to the ul
  for (var i = 0; i < contacts.length; i++) {
    addEmailToContacts(contacts[i]);
  }

  function addEmailToContacts(contact) {
      var li = document.createElement('li');
      li.innerHTML = contact;

      ul.appendChild(li);
  };

  // Click event for the submit
  document.querySelector('#submit').addEventListener('click', function(e) {
    e.preventDefault();
    // Get the value
    var value = document.querySelectorAll('input[type="mail"]')[0].value;
    if (value) {
      addEmailToContacts(value);
    }
  })

Check Codepen

关于javascript - 使用纯 JS 提交时向 DOM 添加数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35755863/

相关文章:

javascript - D3.js - 绘制时间序列数据 - 从 JSON 格式化 x 轴

html - 看不到第三个分区。溢出另一个

html - 如何在悬停时显示父元素的兄弟元素?

javascript - React onClick 函数仅在渲染到 DOM 时触发一次

javascript - 如何使用 Javascript (jQuery) 确定 'line-height'?

javascript:window.print() 不适用于 fancybox

javascript - 如何获取 24 小时格式的日历过滤器 (Angular-Moment.js)

javascript - If 语句在 JavaScript 中不起作用 - HTML

javascript - 替换单击单选按钮上的文本,如果单击其他单选按钮,则将其更改回原始文本

javascript - 获取当前环境可用的事件类型