使用javascript创建和提交表单
问题描述:
我正在尝试创建一个表单并立即使用javascript提交它,我无法弄清楚我做错了什么。这是我的代码:
I'm trying to create a form and submit it immediately with javascript and I cannot figure out what I'm doing wrong. here is my code:
function autoLogIn(un, pw) {
var form = document.createElement("form");
document.body.appendChild(form);
form.method = "POST";
form.action = "login.php";
var element1 = document.createElement("<INPUT NAME='un' TYPE='hidden' VALUE='"+un+"'>");
form.appendChild(element1);
var element2 = document.createElement("<INPUT NAME='pw' TYPE='hidden' VALUE='"+pw+"'>");
form.appendChild(element2);
form.submit();
}
答
问题是createElement会不接受HTML。它接受标记名并返回DOM元素。然后,您可以将此元素的value属性设置为您需要的值。
The problem is that createElement does not accept HTML. It accepts a tagname and returns a DOM element. You can then set the value attribute on this element to what you require.
function autoLogIn(un, pw) {
var form = document.createElement("form");
var element1 = document.createElement("input");
var element2 = document.createElement("input");
form.method = "POST";
form.action = "login.php";
element1.value=un;
element1.name="un";
form.appendChild(element1);
element2.value=pw;
element2.name="pw";
form.appendChild(element2);
document.body.appendChild(form);
form.submit();
}