以下语法适用于Safari(osx),Chrome(win / osx)和Firefox(win / osx) - 但不适用于非城域IE 11(Windows 8.1)。
var html = '<form id="theForm" name="theForm" action="/controller/action" method="POST">;
html += '<input type="hidden" name="bob" value="-1" />';
html += '</form>';
// I expect this to work in IE as it does in all other browsers.
$(document).add(html).submit();
这是一个错误还是我做错了什么?
答案 0 :(得分:2)
看起来你有一些链接问题。我想您要将html
字符串附加到body
元素(不是document
),并提交form
元素。您使用$('BODY').append(html).sumbit();
走在正确的轨道上,但在submit
元素上调用了body
,而不是form
元素。
相反,从html
字符串创建一个jQuery对象集合,将其附加到body
,然后submit
。
$(html).appendTo('body').submit();
var html = '<form id="theForm" name="theForm" action="/controller/action" method="POST">';
html += '<input type="hidden" name="bob" value="-1" />';
html += '</form>';
$(html).appendTo('body').submit();