`
lijun87
  • 浏览: 267886 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

关于弹出窗口提交与父页面刷新的同步问题

阅读更多

最近在工作中发现一个问题,有这样一个需求,弹出窗口提交后需要将父页面刷新用来显示提交结果。

最开始没有注意并发问题,将两个操作都放在父页面上做的,代码如下:

//匹配策略
function saveContactResultSelected(){
	tydicWin1.document.forms["dataForm"].submit();
	tydicWin1.close();
	location.href="${ctx}/strategy_MktStrategy_matchChannelResult.action?" + $.param(getparams());
}

 

最后,由测试人员在测试过程中发现,提交的结果没有在父页面正常显示。经过分析后台日志,发现表单提交的操作还未执行完毕,父页面刷新已经完成。最后确定为操作异步导致。

 

那么怎么将窗口提交与父页面刷新同步呢,想到的一个解决方案是采用异步方式提交表单。

 

//提交表单,成功后刷新父页面
function sub(){
	var ids = getSelectedRows();
	document.getElementById("chlResRelId").value = ids;
	var options = { 
		type:'POST', 
		url:'${ctx}/strategy_MktStrategy_saveContactResultSelected.action', //提交给哪个执行
		success: function(){
			parent.refreshResultSelected();
		},
	    error: function(){
			$.dicBox({style : 2,content : '表单提交失败!'}); 	 
		}
	};
	$('#dataForm').ajaxSubmit(options);
}

 

经过测试,可以比较好的解决子窗口提交与父页面刷新的同步问题。

 

 

附:

   一、 还有一种ajax的表单提交方法,会有成功提示

ajax.submit("orderForm",url,queryWorkOrder);

    其中orderForm为表单名,URL为表单提交地址, queryWorkOrder为回调函数。

 

  二、ajax的url 提交方法

	function delStyChlRel(styChlRelId){
	    $.ajax({
		   type: "POST",
		   url: "${ctx}/strategy_MktStrategy_deleteStyChlRel.action",
		   data: "paras.styChlRelId="+styChlRelId,
		   success: function(msg){ 
		     	refreshMatchResult();
		   },
		   error: function(){
				$.dicBox({style : 2,content : '任务接收失败!'}); 	 
		   }
	   });
	}

 

 

 

分享到:
评论

相关推荐

    JavaScript实现提交模式窗口后刷新父窗口数据的方法

    在JavaScript编程中,有时我们需要创建一个模态对话框(modal dialog)来处理用户输入或确认操作,例如在父窗口中点击按钮,弹出一个模式窗口让用户添加数据,然后在数据提交后关闭模态窗口并刷新父窗口的数据。...

    模式窗口操作父窗口

    当一个模式窗口弹出时,它会捕获所有的输入焦点,直到用户采取了某种行动来关闭该窗口。这种特性使得模式窗口非常适合用于显示警告、请求确认、或者要求用户做出选择等场景。 #### 操作父窗口 在模式窗口中操作父...

    js弹出窗口返回值的简单实例

    总的来说,JavaScript 的弹出窗口和 `window.opener` 提供了一种灵活的方式来实现跨窗口的数据交换和操作同步,这对于构建复杂的Web应用程序非常有用。通过理解和熟练运用这些技术,开发者可以创建更加动态和交互性...

    javascript页面关闭事件

    1. **表单数据验证:**当用户填写表单后尚未提交时离开页面,可以弹出提示询问用户是否真的想要离开。 2. **数据同步:**确保数据在用户离开前已经同步到服务器。 3. **清理资源:**释放内存或关闭打开的文件等资源...

    一些web开发中常用的js代码

    在框架或弹出窗口中,当子窗口中的数据改变后,可能需要更新父窗口的内容,这时就可以使用此方法。 ### `RefreshOpener` 与`RefreshParent`类似,但作用于打开当前窗口的窗口。即,如果当前窗口是由另一个窗口打开...

    一个将WEB网页做成桌面程序效果的框架,与DWR无缝集成

    “标签”和“弹出窗口”可能是指ExtJS中的组件,如TabPanel和Window,它们可以方便地创建具有多个标签页或弹出式对话框的应用。 "ExtDWR通信录.ppt"可能是一个演示文稿,展示了如何使用ExtJS和DWR来创建一个通讯录...

    《程序天下:JavaScript实例自学手册》光盘源码

    12.18 幻灯片式弹出窗口 12.19 弹出窗口生成器 12.20 关不掉的警告框 12.21 循环的警告框 12.22 屏蔽状态栏的错误提示 12.23 获取模式窗口的值 第13章 日期和时间特效 13.1 指定时间关闭页面 13.2 最简单的时间日期...

    程序天下:JavaScript实例自学手册

    12.18 幻灯片式弹出窗口 12.19 弹出窗口生成器 12.20 关不掉的警告框 12.21 循环的警告框 12.22 屏蔽状态栏的错误提示 12.23 获取模式窗口的值 第13章 日期和时间特效 13.1 指定时间关闭页面 13.2 最简单的时间日期...

    ASP.NET中常用输出JS脚本的类

    - 完成特定操作后,如上传文件、预览文档等,关闭弹出窗口。 #### RefreshParent 方法 **概述:** `RefreshParent` 方法用于刷新父窗口中的内容,并关闭当前窗口。此方法接受一个参数:`url`(父窗口中需要刷新的...

    ajax_GreyBox_v5_5的DEMO

    - 弹出表单:用户可以在对话框中填写表单,提交数据到服务器,而无需跳转到新页面。 - 图片预览:在对话框中预览大图,提升图片查看体验。 - 视频播放:在模态窗口中播放视频,让用户在观看时仍能保持对页面其他部分...

    ajax 经典案例源码(Jsp)

    8. **灯箱效果**:图片预览功能,点击小图后,大图会在当前页面以弹出窗口的形式显示,用户可以关闭窗口继续浏览页面。Ajax在此处理图片请求,实现平滑过渡。 9. **自动保存草稿**:在表单填写过程中,如文章编辑,...

    Ajax技术在Web应用系统中的略述.pdf

    Ajax技术是当前Web应用系统中的一种革命性技术,能够实现异步数据交换和局部页面刷新,解决传统Web应用系统中的同步请求数据和页面刷新问题。Ajax技术的出现使得Web应用程序的用户体验大大提高,提高了系统的响应...

    js仿美橙互联右侧栏代码特效.zip

    2. 在线咨询:这是一种更为通用的客服形式,可能不局限于特定的聊天工具,而是提供一个弹出窗口或固定在侧边栏的对话框,用户点击后可以输入问题,与客服人员进行文字交流。这通常涉及到AJAX技术,通过异步请求向...

    APP开发工具APICloud Studio的使用说明

    2. 在 APICloud Studio 中找到相应的按钮,点击后在弹出的窗口中选择需要真机测试的应用。 当应用同步到手机后,点击“完成”关闭同步进度向导,并在手机中测试应用。 ##### 4.7 使用自定义 Loader 自定义 Loader...

    超实用的jQuery代码段

    1.12 强制在弹出窗口中打开链接 1.13 平滑滚动页面到某个锚点 1.14 阻止文本行换行 1.15 实现iframe高度自适应 1.16 实现左右div自适应相同高度 1.17 获取鼠标在屏幕中的坐标 1.18 获取鼠标在窗口客户区中的坐标 ...

    KODExplorer 芒果云-资源管理器

    - 弹出层中的弹出层关闭,父窗口失去焦点问题。 - 代码中grunt部分代码拆分开,放到程序外面;提交到git、osc - 桌面:删除alert enter快捷键删除 - install 检测 加入跳过,(只判断用到的函数) 加入多语言 - ...

    myeclipse搭建svn

    在弹出的提交对话框中,选择要提交的文件,填写提交信息,然后点击“Commit”。这样,你的更改就会被保存到SVN仓库,其他团队成员可以同步获取。 总的来说,通过MyEclipse搭建SVN,可以极大地提高团队协作效率,...

    带文档的Cms v6.7.0源码20130702

    修正了弹出窗口时浏览器一直加载的问题 5.友情链接和投票调查增加了频道归属功能 2013-06-01(V6.6.0) 1.增加了搜索的排序功能 2.开通了修改邮箱的功能 3.整合了Discuz!NT 3.6.711双向同步 2013-04-28(V6.5.0) ...

    API之网络函数---整理网络函数及功能

    API之网络函数1. API之网络函数 WNetAddConnection 创建...GetSubMenu 取得一个弹出式菜单的句柄,它位于菜单中指定的位置 GetSystemMenu 取得指定窗口的系统菜单的句柄 HiliteMenuItem 控制顶级菜单条目的加亮显示...

    最好的asp CMS系统科讯CMSV7.0全功能SQL商业版,KesionCMS V7.0最新商业全能版-免费下载

    循环弹出窗口:页面打开时同时弹出一个窗口,在同一窗口内循环显示广告位中的正常广告,这样,每刷新一次就会在弹出窗口中更替显示一个新的广告条 只需后台修改广告即可更新广告;可设置广告过期时间,通用于站内...

Global site tag (gtag.js) - Google Analytics