jquery - <FORM> 发布到 <IFRAME> 只会在 IE7 中导致弹出窗口

标签 jquery html iframe internet-explorer-7

我正在使用 jQuery 构建一个 iframe 和表单:

iframe = $("<iframe>", {name : "foo"});
form = $("<form>", {
  target : $iframe.attr("name"),
  action : "/foobar",
  method : "POST"
}).append($("<input>", {
  type  : "submit",
  name  : "amifully",
  value : "dressed"
}).hide());
$("body").append(iframe).append(form);
form.submit();

出于某种原因,在 Chrome/Safari/Firefox/IE8+ 中它工作得很好,但在 IE7 中它会在弹出窗口中打开表单。

有人知道发生了什么事吗?

最佳答案

啊啊!我想到了!基本上,当您尝试使用 jQuery 将 name 属性添加到元素时,IE7 会崩溃...您必须在原始字符串中创建名称,如下所示:

iframe = $("<iframe name=\"foo\">");

这真是一件微妙的事情!希望这有助于防止其他人花费 5 个小时在互联网上搜索答案。

关于jquery - <FORM> 发布到 <IFRAME> 只会在 IE7 中导致弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6222441/

相关文章:

javascript - 使用 css 剪辑路径在多边形形状上进行 jQuery 拖放

javascript - 如何偏移 'back to top' 链接以占固定 header ?

jquery - 滚动后淡入 div

html - 如何实现Contenteditable属性的Ctrl+A功能?

javascript - 跨域iframe实时url检测

javascript - Highcharts 可点击列在同一站点上打开另一个页面

asp.net - IE6 及更高版本上禁用按钮的前景色

javascript - 限制 iframe 大小

html - iframe 的长度

javascript - 创建响应式 Web header 的简便方法?