我創建使用JavaScript形式像爲什麼我需要追加的形式身體
//Create a form
var form = document.createElement('FORM');
form.name = 'myForm';
form.method = 'POST';
form.action = 'SomePath';
//Create a hidden filed
var hidden = document.createElement('INPUT');
hidden.type = 'HIDDEN';
hidden.name = 'MyHiddenField';
hidden.value = 'MyHiddenFieldValue';
form.appendChild(hidden);
//Submit form
form.submit();
當腳本執行。所有的語句執行沒有任何錯誤。但表格實際上沒有提交。
但是,當我追加它的文件。像
document.getElementsByTagName('body')[0].appendChild(form);
//Submit form
form.submit();
一切工作正常。我的問題是爲什麼我需要將表單追加到主體?我錯過了什麼。
編輯:它沒有追加表格body
在鉻。
我想,因爲那會被添加到DOM,否則你只能創建新的元素,但不能將它們附加到DOM。你也可以使用document.body.appendChild(form); –
有人[這裏](http://www.bennadel.com/blog/1204-you-cannot-submit-non-rendered-forms.htm)在2008年有同樣的問題... – user3526