<html>
<head>
<script type="text/javascript">
function createf(){
var iframe = document.createElement("iframe");
iframe.id="iframe1";
iframe.name="iframe1";
document.body.appendChild(iframe);
}
function test(){
document.form1.action="http://www.csdn.net";
document.form1.submit();
iframestatus();
}
function iframestatus(){
var iframe = document.getElementById("iframe1");
if (iframe.attachEvent){
iframe.attachEvent("onload", function(){
alert("邮件发送完毕");
//移除
document.body.removeChild(iframe);
//创建
createf();
});
} else {
iframe.onload = function(){
alert("邮件发送完毕");
document.body.removeChild(iframe);
createf();
};
}}
function get(){
var i=document.getElementById("iframe1");
alert(i.name+"创建成功");
}
</script>
</head>
<body>
<form action="" target="iframe1" name="form1">
<input type="button" value="测试" onclick="test()">
</form>
<input type="button" value="get" onclick="get()">
<iframe id="iframe1" src="" name="iframe1"></iframe>
</body>
</html>上面是我用测试的代码,我的目的是:提交一个form ,结果展示在iframe里面,加上判断iframe是否加载完毕的条件,如果只提交form一次的话判断没问题,但是如果要提交2次以上,iframe判断就会出现两次...所以我就在加载完之后移除这个iframe,然后再创建一个相同的iframe,让form的结果展示区还是iframe,但是创建后的iframe貌似不能接受form提交的内容,提交form后就会重新打开一个新的页面...不知道问题出在哪里,还请各位高手帮帮忙...用别的方法也可以..另:不要问我为啥删除iframe,这个是iframe是隐藏的,目的只是用来判断form是否提交完毕了...还有不能用ajax...
解决方案 »
- MyEclipse9.0,struts1 和oracle做的项目
- jquery ajax json webService 问题
- js不能使用
- JS 发送http请求 通不过
- 怎样实现这个UBB效果?
- JS如何实现批量访问网址
- 朋友.帮我一个忙..<table><tr>中间加一段html代码.如何弄??
- 一个关于onClick事件的问题,在线等
- 页面搜索是怎么做了?http://www.ylstudy.net/article/article.asp
- 高手请进:AAA.ascx中的onClick 可以更改BBB.ascx中DataGrid的DataSource吗???
- js如何根据名称获取变量
- 关于 flexigrid 表格编辑的问题
设置 <form action="" target="iframe1" name="form1">
<head>
</head>
<body>
<form action="http://www.baidu.com" target="" id='form1' name="form1">
<input type="button" value="测试" id='btn'>
</form>
<script type="text/javascript">
function $(id) {
return typeof(id) == 'string'? document.getElementById(id) : id;
}
(function(iframeName) {
function createIframe(form) {
var _iframe;
if(!!document.all) {
_iframe = document.createElement('<iframe name="' + iframeName + '"></iframe>');
_iframe.onreadystatechange = function() {
if (/(complete|loaded)/.test(this.readyState)) {
iframeLoaded(this);
}
}
} else {
_iframe = document.createElement('iframe');
_iframe.name = iframeName;
_iframe.onload = function() {
iframeLoaded(this);
}
}
document.body.appendChild(_iframe);
form.submit();
}
function iframeLoaded(iframe) {
alert("邮件发送完毕");
iframe.onload = null;
document.body.removeChild(iframe);
}
function sendPost(obj) {
var _form = obj.form;
_form.target = iframeName;
createIframe(_form);
}
$('btn').onclick = function() {
sendPost(this)
};
})('iframe1');
</script>
</body>
</html>
3L强悍...