easyui监听窗口是否关闭

$(function(){
			 	$('#addSchedueduledCheckWindow').window({
		  			 onBeforeClose : function(){
		  				videoWindowClose("scheduledCheckVideo","addSchedueduledCheckForm","videoProgressbar","addSchedueduledCheckWindow")
		  			 }
				}); 
			 //修改的窗口等待创建后进行注册
			})
<!-- 视频上传窗口关闭事件 -->
		<script type="text/javascript">
			function videoWindowClose(videoId,FormId,videoProgressbarId,windowId){
	  			 //TODO 判断是否在视频上传进度中关闭的窗口   是停止线程并发送请求告诉服务器 停止视频上传 clearInterval(interval);
	  			var value = $('#'+videoProgressbarId).progressbar('getValue');
	      			//判断是否是是上传过程中关闭窗口      是提示    不是清空
	  			 if(value==0||value==100){
	      			if(ifSaveClose=="0"){
	      				//判断视频是否已经上传
		      			 var videoUrl = $("#"+FormId+" input[name='videoUrl']").val();
		      			 if(videoUrl!=""){
			      			 $.messager.confirm("警告","关闭窗口会使得上传的视频失效,是否继续?",function(r){
			      				 //判断是否关闭窗口  关闭发请求删除资源
			      				 if(r){
			      					//发送post请求删除该视频 /ScheduledCheck/deleteScheduledCheckVideo
				      				$.post("${pageContext.request.contextPath}/ScheduledCheck/deleteScheduledCheckVideo",{videoUrl:videoUrl},function(data){},"json")
				      					//清空所有表单数据 和 隐藏数据
					      			 var file1 = document.getElementById(videoId);
					      			$("#"+FormId).form('clear');
					      			//对隐藏域id进行赋值
					      			$("#"+FormId+" input[name='equipmentId']").val(equipmentId);
								     file1.value = "";
					                 $("#"+videoId).attr("disabled",false);
					                 $('#'+videoProgressbarId).progressbar('setValue', 0);
			      				 }else{
			      					 $("#"+windowId).window("open");
			      					 return false;
			      				 }
			      			 })
		      			 }
	      			}else{
	      				ifSaveClose = "0";
	      			}
	  			}else{
	  				ifSaveClose = "0";
	  				//确定关闭  向 服务器发送请求并关闭窗口   否则不关闭
	  				$.messager.confirm("警告","关闭窗口会使得上传中断,是否继续?",function(r){
	  					if(r){
	  						//发送请求中断上传
	  					}else{
	  						//保持原状
	  					}
	      			 })
	  			}  
	  		 }
		</script>
<!-- 视频上传失焦事件 -->
		<script type="text/javascript">
		    var interval= null ; 
		    //绑定视频上传事件
			function bindVideoUpload(VideoId,FormId,VideoProgressbarId){
				$("#"+VideoId).live("blur",function(){
					var size = 0;
					var name = "";
					var file = $("#"+VideoId);
					//判断失焦是否选择了文件 选择了进入判断 没有选择什么都不做
					if(file[0].files[0]==undefined){
						
					}else{
						size = file[0].files[0].size;
						size = (size/1024)/1024;
						name = file[0].files[0].name;
						//这里我们需要获得最后一个index
						type = name.substr(name.lastIndexOf(".")+1);
						if(type=="mp4"){
							//判断上传文件是否过大  过大提示过大 否则上传
							if(size>50){
								$.messager.alert("提示","仅支持上传50M以内的视频");
						             file[0].value = "";
							}else{
								//开始上传进度条开始走动
								var value = $("#"+VideoProgressbarId).progressbar('getValue');
								ajaxFileUpload(VideoId,FormId,VideoProgressbarId);
								$("#"+VideoProgressbarId).progressbar('setValue', 1);
								
								 interval = setInterval(function(){
									if (value < 99){
										value += Math.floor(Math.random() * 10);
										$("#"+VideoProgressbarId).progressbar('setValue', value);
									}
								}, 1000);
								//提交后再次绑定方法
							    file.attr("disabled",true); 
							}
						}else{
							$.messager.alert("提示","仅支持mp4格式进行上传")
						}
					}
				 })
			}
		    
			//页面加载的时候我们就应该给上传视频的控件绑定事件
			$(function(){
				bindVideoUpload("scheduledCheckVideo","addSchedueduledCheckForm","videoProgressbar");
			})
		</script>
	//根据url删除视频
			function deleteVideoByUrl(url){
				$('#editSchedueduledCheckWindow').window("close",true);
				var id = $("#editSchedueduledCheckForm input[name='id']").val();
				//然后我们将div下的内容改为可以提交视频的内容
				$("#editVideoDiv").empty();
				$("#editVideoDiv").append("<input id='editScheduledCheckVideo'  type='file'  name='scheduledCheckVideo' />");
				$("#editVideoProgressbarDiv").append("<div id='editVideoProgressbar' class='easyui-progressbar' style='width:200px;' ></div>");
				//为新生成的file绑定事件
				 $.parser.parse($("#editVideoProgressbarDiv")); //重新渲染标签
			 	 bindVideoUpload("editScheduledCheckVideo","editSchedueduledCheckForm","editVideoProgressbar"); 
			 	$('#editSchedueduledCheckWindow').window({
		  			 onBeforeClose:function(){
			  			 videoWindowClose("editScheduledCheckVideo","editSchedueduledCheckForm","editVideoProgressbar","editSchedueduledCheckWindow")
		  			 }				  				 
				});  
				  $('#editSchedueduledCheckWindow').window("open");
			}

猜你喜欢

转载自blog.csdn.net/afdasfggasdf/article/details/86620644