亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從表單 HTML/JS 捕獲用戶輸入

從表單 HTML/JS 捕獲用戶輸入

滄海一幻覺 2023-09-07 16:41:04
我目前正在嘗試從表單捕獲輸入數據并將該數據存儲到對象數組中,然后該對象數組可以匯總控制臺中捕獲的數據。最重要的是,我嘗試按照我的作業說明運行該函數,使用傳統的 DOM 事件處理程序來存儲該數據。JS 的最終目標是使用 var t 通過 ID 'contactSubButton' 獲取提交按鈕的元素,并運行函數 contactInfo onsubmit...但是,無論我嘗試什么,我都會在控制臺的“t.addEventListener”行中收到此消息......Uncaught TypeError: Cannot read property 'addEventListener' of nullvar t = document.getElementById("contactSubButton");t.addEventListener('click', contactInfo());function contactInfo(fName, lName, email, country, subject) {  fName = document.getElementById('fname').value;  lName = document.getElementById('lname').value;  email = document.getElementById('email').value;  country = document.getElementById('country').value;  subject = document.getElementById('subject').value;  for (i = 0;; i++) {    var subInfo = [fName, lName, email, country, subject]  }  console.log('Your submission details are:' < br > 'First Name: ' + fName)}<div id="form">  <form>    <label for="fname">First Name</label>    <input type="text" id="fname" name="firstname" placeholder="Your first name...">    <label for="lname">Last Name</label>    <input type="text" id="lname" name="lastname" placeholder="Your last name....">    <label for="email">Email Address</label>    <input type="email" id="email" name="email" placeholder="Please enter your email...">    <label for="country">Country</label>    <select id="country" name="country">      <option value="usa">United States</option>      <option value="canada">Canada</option>      <option value="mexico">Mexico</option>    </select>    <label for="subject">Subject</label>    <textarea id="subject" name="subject" placeholder="How can we help?"></textarea>    <input type="submit" value="Submit" id="contactSubButton">    <input type="reset" value="Reset Form">  </form></div>  
查看完整描述

2 回答

?
慕哥9229398

TA貢獻1877條經驗 獲得超6個贊

  • 你有一個永遠不會結束的循環for (i = 0;; i++) {

  • 你在這里傳遞不必要的變量contactInfo(fName, lName, email, country, subject) {

  • 您錯誤地分配了事件偵聽器。你需要t.addEventListener('click', contactInfo);沒有()

  • 你的引述是錯誤的console.log('Your submission details are:' < br > 'First Name: ' + fName)

我想你想要這個

  • 我使用提交事件

  • 如果用戶按取消,我會取消提交事件

function contactInfo(event) { // passing the submit event

  let fName = document.getElementById('fname').value,

    lName = document.getElementById('lname').value,

    email = document.getElementById('email').value,

    country = document.getElementById('country').value,

    subject = document.getElementById('subject').value;


  const text = `Your submission details are:

    First Name: ${fName}

    Last Name:  ${lName}

    Email:      ${email}

    Country:    ${country}

    Subject:    ${subject}

    Send this now?`

  

  if (!confirm(text)) event.preventDefault(); // stop submission by cancelling the event passed

}


window.addEventListener("load", function() { // when page loads

  document.getElementById("contactForm").addEventListener('submit', contactInfo);


});

<div id="form">

  <form id="contactForm">

    <label for="fname">First Name</label>

    <input type="text" id="fname" name="firstname" placeholder="Your first name...">


    <label for="lname">Last Name</label>

    <input type="text" id="lname" name="lastname" placeholder="Your last name....">


    <label for="email">Email Address</label>

    <input type="email" id="email" name="email" placeholder="Please enter your email...">


    <label for="country">Country</label>

    <select id="country" name="country">

      <option value="usa">United States</option>

      <option value="canada">Canada</option>

      <option value="mexico">Mexico</option>

    </select>


    <label for="subject">Subject</label>

    <textarea id="subject" name="subject" placeholder="How can we help?"></textarea>


    <input type="submit" value="Submit" id="contactSubButton">

    <input type="reset" value="Reset Form">


  </form>


查看完整回答
反對 回復 2023-09-07
?
嗶嗶one

TA貢獻1854條經驗 獲得超8個贊

嘗試這樣的事情:


網頁:


<form method="post" id="myForm">

   <input type="text" name="firstname" placeholder="Your first name...">

   <input type="submit" value="Submit" />

</form>

JS:


document.getElementById('myForm').addEventListener ("submit", function (evt) {

   evt.preventDefault();

   var formData = new FormData(document.getElementById('myForm'))

   console.log('Your submission details are:' < br > 'First Name: ' + formData.get('firstname'))

});


查看完整回答
反對 回復 2023-09-07
  • 2 回答
  • 0 關注
  • 147 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號