Javascript Iframe尚未生成,但具有警报的代码仍然有效
我试图编辑一个页面,这样提交表单只会生成一个iframe。如果我使用此代码:Javascript Iframe尚未生成,但具有警报的代码仍然有效,javascript,iframe,Javascript,Iframe,我试图编辑一个页面,这样提交表单只会生成一个iframe。如果我使用此代码: window.onload = function() { var formItem = document.getElementsByTagName("form")[2]; formItem.setAttribute('action', ''); formItem.addEventListener('submit', createIframe, false); } function createIframe
window.onload = function() {
var formItem = document.getElementsByTagName("form")[2];
formItem.setAttribute('action', '');
formItem.addEventListener('submit', createIframe, false);
}
function createIframe(){
var ifrm = document.createElement("IFRAME");
ifrm.setAttribute("src", "http://127.0.0.1/myIframe.html");
ifrm.style.width = "50%";
ifrm.style.height = "50%";
document.body.appendChild(ifrm);
}
然后在提交表单时不会生成iframe。但是,如果我将createIframe()函数设置为:
function createIframe(){
alert(1);
}
然后在提交表单时创建警报。因此,我的iframe代码一定有问题,但我不知道是什么!有人有什么建议吗?谢谢您忘了取消
表单的默认行为
function createIframe(e){
e.preventDefault();
//...
否则,表单将使用空的action
属性将页面提交给自身
工作得很好-非常感谢!我对preventDefault()不熟悉,所以我也学到了一些新东西——干杯@金戈:没问题=]
在这种情况下,我只是在我的答案中链接到了preventDefault()
MDN页面,其中显示了另一个示例,尽管名称是不言自明的<代码>:)