簡體   English   中英

我正在使用JS生成基本表單; 如何獲取數據?

[英]I'm generating a basic form using JS; How can I get the data?

我在這里有一個基本的javascript表單創建腳本

var loginDiv;
var loginForm;
var formUserInput;
var formUserPass;
var formSubmit;

loginDiv = document.createElement('div');
loginDiv.id = 'loginDiv';

loginForm = document.createElement("form");
loginForm.setAttribute('method', "post");
loginForm.setAttribute('action', 'JavaScript:doSomething()');

formUserInput = document.createElement("input");
formUserInput.setAttribute('type', "text");
formUserInput.setAttribute('name', "username");

formUserPass = document.createElement("input");
formUserPass.setAttribute('type', "text");
formUserPass.setAttribute('name', "password");

formSubmit = document.createElement("input");
formSubmit.setAttribute('type', "submit");
formSubmit.value = "Submit";

loginForm.appendChild(formUserInput);
loginForm.appendChild(document.createElement("br"));
loginForm.appendChild(formUserPass);
loginForm.appendChild(document.createElement("br"));
loginForm.appendChild(formSubmit);

loginDiv.appendChild(loginForm);

document.getElementById('game').appendChild(loginDiv);

我的問題是; 如何將文本字段的值傳遞給doSomething()函數?

您可以像這樣分別從每個dom節點中獲取值:

formUserInput.value

而不是使用此:

loginForm.setAttribute('action', 'JavaScript:doSomething()');

您可以像這樣綁定事件處理程序:

loginForm.addEventListener("submit", function(){
    doSomething(formUserInput.value, formUserPass.value)
})

您可以將其作為對象傳遞

Var formValues = { "username": document.getElementById(set an id).value, ... }

然后將表單值作為對象傳遞。 您可以作為formValues.username等訪問它們。

編輯:尼克的建議是讓聽眾提交,這是比較傳統的做法,我仍然建議將它們放在一個不錯的緊實物體中並傳遞到那里。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM