A solicitação de postagem de JavaScript como um envio de formulário mostra como enviar um formulário que você criou via POST em JavaScript. Abaixo está o meu código modificado.
var form = document.createElement("form");
form.setAttribute("method", "post");
form.setAttribute("action", "test.jsp");
var hiddenField = document.createElement("input");
hiddenField.setAttribute("name", "id");
hiddenField.setAttribute("value", "bob");
form.appendChild(hiddenField);
document.body.appendChild(form); // Not entirely sure if this is necessary
form.submit();
O que eu gostaria de fazer é abrir os resultados em uma nova janela. Atualmente, estou usando algo parecido com isto para abrir uma página em uma nova janela:
onclick = window.open(test.html, '', 'scrollbars=no,menubar=no,height=600,width=800,resizable=yes,toolbar=no,status=no');
javascript
html
post
user4642212
fonte
fonte
document.body.appendChild(form)
é necessário, consulte stackoverflow.com/q/42053775/58241Respostas:
Adicionar
ou
à definição do seu formulário.
fonte
Se você deseja criar e enviar seu formulário a partir de Javascript, como está na sua pergunta, e deseja criar uma janela pop-up com recursos personalizados, proponho esta solução (coloquei comentários acima das linhas adicionadas):
fonte
target
atributo onform
element não é preterido no HTML 4.01 Transitional e, aparentemente, deve permanecer no HTML 5 .fonte
.append
fechar a tag do formulário?$form.appendTo('body').submit();
Eu conheço este método básico:
1)
2)
3)
Trabalho!
fonte
Solução de trabalho mais simples para a janela de fluxo (testada no Chrome):
fonte