ifreame和ajax,easyui dialog ifream 异步怎么提交表单

在EasyUI中,遇到一个使用Dialog和iframe的表单提交问题。当点击Dialog内的保存按钮尝试异步提交表单时,发现无法正常工作。原因是尝试提交的表单实际上是父页面的,而非iframe中的。解决方法是通过`$('#energyBasic').contents().find('#energyBasicForm')`来定位到iframe内的表单,从而实现正确的异步提交。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

easyui dialog ifream 异步如何提交表单

在主页面做了一个dialog,里面嵌入了iframe,点击按钮可以弹出这个窗体,代码如下

点击按钮弹出窗体

if ($('#btnAddBasic')[0]) {

$('#btnAddBasic').click(function() {

$('#energyBasicForm').form('clear');

$('#energyBasicDialog').dialog({

closed : false,

title : '能源信息维护',

shadow : true,

modal : true,

collapsible : true,

buttons : [ {

text : '保存',

iconCls : 'icon-save',

id : 'sBtn',

handler : function() {

saveEnergyBasic();

}

}, {

text : '取消',

id : 'cBtn',

handler : function() {

$('#energyBasicDialog').dialog('close');

}

} ]

});

});

}

ifreame的嵌入页面html

信息

名称

现在的问题是,我点击保存按钮提交表单不行了

function saveEnergyBasic(){

$('#energyBasicForm').form('submit',{    // 一到这句就跳出去了,如果用iframe提交 就不能实现异步了

url: 'EnergyBasicAdd.jsp',

onSubmit: function(){

return $(this).form('validate');

},

success: function(result){

var result = eval('('+result+')');

if (result.success){

$('#energyBasicDialog').dialog('close');        // close the dialog

$.messager.alert('提示', '保存成功!', 'info');

$('#dataList').datagrid('reload');    // reload the user data

} else {

$.messager.alert('错误', "保存失败!", 'error');

}

}

});

}

------解决方案--------------------

iframe和父页是独立的空间

$('#energyBasicForm')你这是获取父页的那个表单,不是iframe里面的

function saveEnergyBasic() {

$('#energyBasic').contents().find('#energyBasicForm')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值