jquery下控制iframe页面form提交的问题备忘

    首先有两个页面,暂且设为A和B。B是A的子页面,即A的iframe中是B,A中除了一个iframe还有一个from这个form的id为frm:
这是A:

这是B:


A中js:

 

B的js:

 

 


发现问题:
1.  在A中显示已经声明$('#frm').submit的事件处理函数,但当A中执行$('button').click内的frm.submit();时,并不会执行绑定的submit事件处理函数,而是按照默认的处理方式提交表单,即使用$('#frm').submit()和frm.submit();并不相同。所以在“省厅考勤系统”中,代码如下:

options内的frm.submit();并不会触发下面自定义的$('#'+frm.id).submit事件处理函数,而是正常提交了。

 

2.  在iframe的子页面中,无法控制父页面表单提交,即使在B中用$(window.parent.document).find('#frm').submit();也无法使用A中自定义的事件处理函数处理,而是按照默认提交方式提交,但使用$(window.parent.document).find('button').click();可正确触发在A中自定义的$('button').click()处理函数,所以有一个解决方案,即若B要提交A中表单,则在A中定义一个type="hidden"的input,为该input绑定自定义点击事件,事件中提交表单,而在B中利用A中该input的点击事件提交A中表单。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值