jsp页面modalDialog之间如何传值

我的前台是基于easyUI和jQuery写的,但原理都类似

一,父窗口向子窗口传值

用modalDialog模态框可以在原有的页面上显示一个弹窗,弹窗内容则写在另一个页面上

父jsp页面的js代码如下:

localStorage.hel = $('#P_SMS_ALARM_DXM_TXT').val();
var dialog = parent.sy.modalDialog({
		title : '发送测试短信',
	 	url : '<%=contextPath%>/sms/sendTestParam.jsp?type='+$('#P_SMS_SEND_TYPE').val(),
		width:'415',
		height:'220',
		buttons : [{
			text : '点击发送',
			handler : function(value){
				var d = dialog.find('iframe').get(0).contentWindow;
				var type = $('#P_SMS_SEND_TYPE').val();
				var phone = $("#phone",d.document).val();
				var message = $("#message",d.document).val();
				var str = "";
				var url = '<%=contextPath %>/sendMessageController/sendMessageTest__noSecurity';
				$("#params").val(getParamStr());
				str = getParamStr()+"@P_SMS_PHONE;"+phone+"@P_SMS_MESSAGE;"+message;
				if(phone == "" || message== ""){
					$.messager.alert("提示框","<br/><br/>短信内容或手机号码不为空!","info");
				}else{
	        		$.post(url, {params:str,type:type}, function(result) {	
						dialog.dialog('destroy');
						if (result.success) {
							$.messager.show({
								title : "发送测试短信",
								msg : "发送成功"
							}); 
						} else { 
							$.messager.alert('提示',"发送失败 ", 'error');
						}
					}, 'json');
	        	}
			}
		}] 
	});

子jsp页面要做一个短信发送窗口,内容如下:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
	String type =  request.getParameter("type");
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<jsp:include page="../inc.jsp"></jsp:include>
<title>发送测试短信</title>
<script type="text/javascript">
	$(function(){
		var type = <%= type %>;
		var txt=localStorage.hel;
		if (type == 1) {
			$('#message').prop('readonly','readonly');
			$('#message').css('background','#f4f4f4');
			$('#message').val(txt);
		}
		
		//验证手机号
		var regPhone = /^1(3|4|5|7|8)\d{9}$/ ;
		$.extend($.fn.validatebox.defaults.rules, { 
			phone: { 
			validator: function(value,param){ 
				return regPhone.test(value); 
			}, 
				message: '手机号码输入有误!' 
			} 
		});
	});
</script>
</head>
<body>
	<div style="padding-top: 3px;padding-left: 15px;">
	<form method="post" class="form">
		<table>
		<tr>
		 	 <td>短信文本:</td>
		 	 <td><textarea cols="29" rows="4" id="message" style="resize:none"></textarea></td>
		</tr>
		<tr><td><br/></td></tr>
		<tr style="padding-top: 3px">
		  	<td>电话号码:</td>
		 	<td><input id="phone" data-options="validType:'phone'" class="easyui-validatebox" style="width: 194px;height: 24px"></td>
		</tr>
		</table>
	</form>
</div>
</body>
</html>

我要传的参数一个是type,一个是txt

type直接在父页面获取到值之后,直接写在url后面,在子页面head之前request.getParameter("type")获取到

但是我要获取的txt文本太长,而modalDialog默认提交方式为get,所以,既然这个模态框是一个单独的jsp页面,因此可以通过localStorage来传参。

 二,父窗口获取子窗口元素

//先获取子窗口
var contentWindow = dialog.find('iframe').get(0).contentWindow;
//直接调用子窗口的元素
var calDate=contentWindow.$("#calDate").val();
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值