我正在尝试创建一个表单并立即用javascript提交它,我无法弄清楚我做错了什么.这是我的代码:
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();
}
Run Code Online (Sandbox Code Playgroud)
Asa*_*din 75
问题是createElement不接受HTML.它接受标记名并返回DOM元素.然后,您可以将此元素的value属性设置为您需要的值.
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();
}
Run Code Online (Sandbox Code Playgroud)
修改后的代码:jsfiddle。
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");
element1.name="un"
element1.value = un;
element1.type = 'hidden'
form.appendChild(element1);
var element2 = document.createElement("INPUT");
element2.name="pw"
element2.value = pw;
element2.type = 'hidden'
form.appendChild(element2);
form.submit();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
74688 次 |
| 最近记录: |