设置iframe内表单target属性以兼容IE、Firefox【转载】

2011年11月19日 haibor 
 
 
 

今天有客户反应,在一产品网站的资源下载页面,用户登录提交后页面无反应!

经测试,Firefox下正常,IE下无反应!IE还真是腼腆,都点提交了,还无反应!!!

查看代码,发现登录表单及登录后显示的资源列表均由一个 iframe 框架加载,这里做个情境假设:表单文件为 A.asp,前端iframe文件为 B.asp。

A.asp 表单内容为:

<form name="down_form" action="a.asp" method="post">
    姓名:<input type="text" name="username" size=20>
    单号:<input type="text" name="password" size=20>
    <input type="submit" value="登 陆" />
</form>

B.asp 页面内容为:

<iframe id="downlist" src="http://xxx.com/A.asp"></iframe>

如此,访问 B.asp 页面操作登录时,IE浏览器下无反应,Firefox正常登录并返回下载列表!解决办法也很简单:

1、在 A.asp 页面的 <form > 部分,添加 target 代码,注意红色的 downlist,要与 iframe 的ID和name一致:

<form name="down_form" action="a.asp" method="post" target="downlist">

2、B.asp页面中 iframe 标签要求 id与name标签都要添加!完整如下:

<iframe id="downlist" name="downlist" src="http://xxx.com/A.asp"></iframe>

分享一些兼容性的示例代码:

<form  action="http://www.baidu.com" method="post" id="form_box" >
    <input type="submit" value="submit"/>
</form>
<iframe id="loginIframe" width="300" height="300"></iframe>
 
<script language="javascript">
    var _form=document.getElementById("form_box");
    _form.setAttribute("target","loginIframe");
</script>

IE:点击“submit”提交之后,form表单并未按照预想提交到“loginIframe”这个iframe中。

FF:点击“submit”提交之后,form表单按照预想提交到“loginIframe”这个iframe中。

解决此兼容问题: 在iframe中增加name属性即name=“loginIframe”

<iframe id="loginIframe" name="loginIframe" width="300" height="300"></iframe>

设置iframe内表单target属性以兼容IE、Firefox【转载】的更多相关文章

  1. .NET开源工作流RoadFlow-表单设计-新建表单(属性设置)

    点击表单设计工具栏上的 新建表单 按钮会弹出新表单属性设置框: 表单名称:新表单表名称. 数据连接:表单对应的数据库连接(此连接在 系统管理-->数据库连接 中维护). 数据表:表单对应的数据库 ...

  2. .NET前后台-JS获取/设置iframe内对象元素并进行数据处理

    转载请注明出处:果冻栋吖 这个主要是修改H3BPM一个批量审批的功能时候做的.先看下图: H3自带了批量审批的功能,也就是按钮1,有审批意见3,但是如果3里边不填写内容点击1之后,效果就是表单里边没有 ...

  3. iframe+form表单提交数据

    <h6>基于iframe+Form表单</h6> <iframe id="iframe" name="ifra" onclick= ...

  4. HTML5表单新属性

    HTML5表单新属性 autofocus  自动聚焦 <input type="text" autofocus> placeholder占位文本 tel         ...

  5. html/form表单常用属性认识

    1.form表单常用属性练习 <style> .form1 { margin: auto; height: 900px; width: 500px; text-align: center; ...

  6. HTML表单__表单元素属性

    看完"HTML表单__表单元素"那一节的同学会发现,同是input标签,type属性值不一样的时候,input类型完全不一样.type就是input的一个属性,除type之外,还有 ...

  7. form表单的属性标签

    form表单的常用标签 表单: <form id="" name="" method="post/get" action=" ...

  8. HTML5 表单新增属性

    1. 表单内元素的form属性 在H5中可以把form放到页面的任何地方,然后为该元素指定一个form属性,属性值为该表单的id,这样就可以声明该元素从属于指定表单了 <form id=&quo ...

  9. form表单target的用法,实现无刷新提交页面

    form表单的target,当将iframe设置为隐藏时,可以实现当前页表单提交而不进行跳转刷新.代码如下,首页在页面里准备一个form表单和一个iframe. <form action=&qu ...

随机推荐

  1. Netty处理TCP拆包、粘包

    Netty实践(二):TCP拆包.粘包问题-学海无涯 心境无限-51CTO博客 http://blog.51cto.com/zhangfengzhe/1890577 2017-01-09 21:56: ...

  2. C#中字符数组,字节数组和string之间的转化

    转自:http://blog.csdn.net/wangxiaoqin00007/article/details/17675419 NDC(NetworkDiskClient)的界面和后台程序之间用S ...

  3. 手游包压缩技术引领手游行业实现app页游化

    近些年,掌上游戏时代已经成为全民风尚,但身为游戏开发商考虑过手游安装包大小与用户转化率之间的关系吗? 随着手机游戏市场发展愈发壮大,行业发展愈加成熟,手游厂商愈来愈多,手游产业也进入了优胜劣汰的环节, ...

  4. python中读取json文件报错,TypeError:the Json object must be str, bytes or bytearray,not ‘TextIOWrapper’

    利用python中的json读取json文件时,因为错误使用了相应的方法导致报错:TypeError:the Json object must be str, bytes or bytearray,n ...

  5. git学习------>从SVN迁移到Git之后,项目开发代码继续在SVN提交,如何同步迁移之后继续在SVN提交的代码到Git?

    最近逐步逐步的将公司的项目都从SVN往Git迁移了,但是想团队成员都能够一步到位就迁移到Git是不可能的,因为还有大部分人都还不会Git,所以整个过渡过程估计得大半年. 因此导致虽然项目迁移过来了,但 ...

  6. webpack无法通过 IP 地址访问 localhost 解决方案

    解决方案: 在config里面的index.js里面的module.exports下面的dev下面的host:'localhost' 改为 host:'0.0.0.0',就可以访问啦!

  7. redis的客户端medis

    medis是用js写的redis客户端工具,界面很好用,也很有用.点击这里可以下载到mac下的软件包. 下面是截图:         完结.

  8. Objective-C中的alloc和init问题

    从开始学的NSString *name=[[NSString alloc] init] 起,仅仅这句话是分配内存空间,一直在用,从来没考虑过它的内部是怎么实现的.今天无意中看到了这一句代码: NSSt ...

  9. PHP生成名片、网址二维码

    PHP生成名片.网址二维码 php生成名片(vcard)二维码: <?php$vname = 'test';  $vtel = '13800000000';  generateQRfromGoo ...

  10. ZenCart分类数量打折Category Quantity Discount插件

    附件:http://files.cnblogs.com/lzj87980239/Category_Quantity_Discount.rar 效果图后台1.将update.sql导入到数据库 2.将Y ...