提交后更改表单目标
change target of form after submit
我花了那么多时间在这件事上,却毫无进展,我都快疯了。请帮助!
下面是代码。
我希望表单的TARGET属性从target="frame1"
更改为target="frame2"
,然后更改为target="frame3"
等等,在提交表单后无限制。表单将这些提交给iframe,因此每次提交后页面都不会刷新。
有人能帮忙吗?
<div id="container">
<div id="scan">
<form method="post" id="auditRepairForm" name="auditRepairForm" action="https://example.com.com" target="changeTarget()">
<input name="scanID" id="scanID" value="12345678" onFocus="this.value=''" />
<input name="fromLaunchScreen" id="fromLaunchScreen" type="hidden"/>
<input type="submit" id="SubmitForEdit" style="display:none;"/>
</form>
</div>
<div class="outerdiv">
<iframe name="frame1" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame2" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame3" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame4" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame5" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame6" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame7" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame8" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame9" class="inneriframe"></iframe>
</div>
<div class="outerdiv">
<iframe name="frame10" class="inneriframe"></iframe>
</div>
</div>
如何改变
<input type="submit" id="SubmitForEdit" style="display:none;"/>
:
<input type="button" id="SubmitForEdit" onclick="changeformtarget();" style="display:none;"/>
和添加
<script type="text/javascript">
var count = 1;
function changeformtarget() {
document.getElementById('auditRepairForm').target = 'frame'+count;
count += 1;
}
</script>
如果您使用IFRAME而不是AJAX,则需要在提交到的页面中放置一小段javascript代码。
该代码应该直接更改父窗口中表单的属性,或者在父窗口中激活执行该操作的函数。
我认为你需要使用setTimeout,否则就没有机会跳出提交事件:
<script type="text/javacript">
var count = 2;
function submit() {
setTimeout(function () {
// this will get executed AFTER the form submits
document.getElementById("the_form").target = "frame" + count;
count += 1; // increase the counter so next time is frame3;
}, 1);
return true;
}
</script>
<form id="the_form" onsubmit="return submit();" target="frame1">
..etc..
</form>
相关文章:
- 使用javascript将表单提交到iframe目标中
- 通过JavaScript设置表单目标
- 在 iframe 中指定全局变量名称时,表单目标会中断
- HTML 表单目标到顶部框架
- 当表单目标被遮挡时,如何使用 PHP 提交表单
- html表单操作跨域目标iframe
- 表单属性目标是否与asp.net跨页回发相同
- -jQuery 表单插件 - 使用多个目标/数据
- <表单目标=“_blank”>在 iOS 7.0.3 中不起作用
- 当表单以 html 为目标并在 IE11 中操作另一个 html 时,它最终会打开两个页面
- 在没有 JavaScript 的情况下更改表单操作目标
- 跟踪谷歌分析目标中的表单输入
- javascript表单第二次提交到错误的目标
- 使用javascript将表单输入值插入href目标URL
- Firefox试图在按enter键时将表单发送到同一页面,而表单标记中没有定义目标
- 简单的方法使用getElementsByTagName来改变表单目标
- 改变表单目标,重定向现有iframe
- HTML表单目标使用jquery的新窗口
- 根据下拉选择更改表单目标
- 提交后更改表单目标