jsp页面之间如何传递一个js对象



0

jsp页面之间如何传递一个js对象3

比如有两个jsp页面,a.jsp与b.jsp 
在a.jsp中有一个js对象sellerInfo,我想要这个sellerInfo传递到b.jsp 
使用 window.location = "b.jsp?data"+sellerInfo 的话 不可行
 
2012年1月10日 21:45

7个答案按时间排序按投票排序

0 0

把对象转换成字符串就可以了,常常所说的序列化,可以根据自己的思路来转化。

2012年1月18日 16:39
0 0

页面传输有多种方式: 
1.url参数传递,适用于单个参数传递 
父页面中 
使用url带参数方式给字面传输参数test.jsp?para1=data1&para2=data2,参数使用&分割 
子页面中 
子页面中使用浏览器的getParameter获取url中传递过来的参数 
<% 
String   data1=request.getParameter("para1"); 
String   data2=request.getParameter("para2"); 
%> 
2.弹出窗口传递,适用于对象传输 
父页面中:var obj = new Object();//定义一个传递给子页面的对象 
obj.para1=data1; 
obj.para2=data2; 
var retObj = null;//用于接收模态窗口返回对象; 
retObj = window.showModalDialog("modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");   

if(retObj != null) 

   //retObj.retPara1为子页面返回给父页面的值,子页面中使用window.returnValue这个对象给父页面返回值; 
   if(retObj.retPara1 != null) 
     var retPara = retObj.retPara1; 


子页面中: 

接收父页面传输过来的对象,一定要判断是否为空奥。 
if(window.dialogArguments != null) 
var inputObj = g_Obj = window.dialogArguments; 
var para1 = inputObj.para1; 
var para2 = inputObj.para2; 

子页面返回给父页面参数: 
var returnObj = new Object(); 
returnObj.retPara1  = "returnValue"; 
window.returnValue = returnObj;//将返回对象付个window的对象,这样父页面就以获得子页面传回的对象了。 
window.close(); 
3.使用window.open弹出页面,直接使用window.parent进行对象获取 

a.html 
<html> 
<script language="javascript"> 
var obj = '1'; 
function openB() 

window.open ("b.html") //写成一行 

</script> 
<body οnlοad="b.html">
</body> 
</html> 
b.html 
<html> 
<script language="javascript"> 

function showInputPara() 

alert(window.parent.obj);

</script> 
<body οnlοad="showInputPara();"> 

</body> 

</html> 
需要注意的是这种方法只能获取a页面中的全局变量和对象,不能获取局部对象和变量 
4.借助浏览器的Cookie 
使用Cookie存在很多不稳定因素,这里不建议使用。给出部分代码 
Cookie cookie = new Cookie("key", "value"); //往Cookie中设置键值对,键必须唯一,值可以是对象 
cookie.setMaxAge(60);  //设置60秒生存期,如果设置为负值的话,则为浏览器进程Cookie(内存中保存),关闭浏览器就失效。 
Cookie[] cookies = request.getCookies(); //获取Cookie中的键值对数组 
5.借助session 
上面的兄弟已经叙述了,我这里就不再写了

2012年1月15日 03:09
0 0

说一个简单一点的办法,使用iframe父子窗口获取这个变量: 
1 保存下面代码为a.html 

Java代码   收藏代码
  1. <input type='button' value='获取b.html的sellerInfo变量值' οnclick="getValue()">  
  2. <iframe id='iframeb' src='b.html' style='display:none'>  
  3. </iframe>  
  4.   
  5. <script>  
  6. function getValue(){  
  7.     alert(frames['iframeb'].sellerInfo)   
  8. }     
  9. </script>  


2 保存下面代码为b.html 
Java代码   收藏代码
  1. <script>  
  2. var sellerInfo = 123;     
  3. </script>  


3 运行a.html的“获取sellerInfo值”按钮。 

4 其实jsp与html也是一样的道理。

2012年1月10日 23:04
0 0

看实际情况 你可以在a.jsp跳转到b.jsp的时候,直接把sellerInfo 对象作为参数传到b.jsp中的某个方法,再在这个方法中使用。

2012年1月10日 22:47
0 0

上面这种方法有点绕。

2012年1月10日 22:44
0 0

Java代码   收藏代码
  1. <script>     
  2. var rowdata=$('#cartTable').getRowData(ids[0]);        
  3. function setRowData(rowdata)        
  4. {       
  5.  <%        
  6.                     session.setAttribute("seller_id", rowdata.seller_id);        
  7.                     session.setAttribute("seller_name", rowdata.seller_name);        
  8.                     session.setAttribute("seller_person", rowdata.seller_person);        
  9.                     session.setAttribute("seller_phone", rowdata.seller_phone);        
  10.                     %>       
  11.     
  12. }     
  13. </script>   


思路: 
1.在a.jsp 中把sellerInfo对象转化为java对象,放到session 
2.在b.jsp中取出这个对象。再去用这个对象。

2012年1月10日 22:43
0 0

参照这个问题:http://www.iteye.co

0

jsp页面之间如何传递一个js对象3

比如有两个jsp页面,a.jsp与b.jsp 
在a.jsp中有一个js对象sellerInfo,我想要这个sellerInfo传递到b.jsp 
使用 window.location = "b.jsp?data"+sellerInfo 的话 不可行
 
2012年1月10日 21:45

7个答案按时间排序按投票排序

0 0

把对象转换成字符串就可以了,常常所说的序列化,可以根据自己的思路来转化。

2012年1月18日 16:39
0 0

页面传输有多种方式: 
1.url参数传递,适用于单个参数传递 
父页面中 
使用url带参数方式给字面传输参数test.jsp?para1=data1&para2=data2,参数使用&分割 
子页面中 
子页面中使用浏览器的getParameter获取url中传递过来的参数 
<% 
String   data1=request.getParameter("para1"); 
String   data2=request.getParameter("para2"); 
%> 
2.弹出窗口传递,适用于对象传输 
父页面中:var obj = new Object();//定义一个传递给子页面的对象 
obj.para1=data1; 
obj.para2=data2; 
var retObj = null;//用于接收模态窗口返回对象; 
retObj = window.showModalDialog("modal.htm",obj,"dialogWidth=200px;dialogHeight=100px");   

if(retObj != null) 

   //retObj.retPara1为子页面返回给父页面的值,子页面中使用window.returnValue这个对象给父页面返回值; 
   if(retObj.retPara1 != null) 
     var retPara = retObj.retPara1; 


子页面中: 

接收父页面传输过来的对象,一定要判断是否为空奥。 
if(window.dialogArguments != null) 
var inputObj = g_Obj = window.dialogArguments; 
var para1 = inputObj.para1; 
var para2 = inputObj.para2; 

子页面返回给父页面参数: 
var returnObj = new Object(); 
returnObj.retPara1  = "returnValue"; 
window.returnValue = returnObj;//将返回对象付个window的对象,这样父页面就以获得子页面传回的对象了。 
window.close(); 
3.使用window.open弹出页面,直接使用window.parent进行对象获取 

a.html 
<html> 
<script language="javascript"> 
var obj = '1'; 
function openB() 

window.open ("b.html") //写成一行 

</script> 
<body οnlοad="b.html">
</body> 
</html> 
b.html 
<html> 
<script language="javascript"> 

function showInputPara() 

alert(window.parent.obj);

</script> 
<body οnlοad="showInputPara();"> 

</body> 

</html> 
需要注意的是这种方法只能获取a页面中的全局变量和对象,不能获取局部对象和变量 
4.借助浏览器的Cookie 
使用Cookie存在很多不稳定因素,这里不建议使用。给出部分代码 
Cookie cookie = new Cookie("key", "value"); //往Cookie中设置键值对,键必须唯一,值可以是对象 
cookie.setMaxAge(60);  //设置60秒生存期,如果设置为负值的话,则为浏览器进程Cookie(内存中保存),关闭浏览器就失效。 
Cookie[] cookies = request.getCookies(); //获取Cookie中的键值对数组 
5.借助session 
上面的兄弟已经叙述了,我这里就不再写了

2012年1月15日 03:09
0 0

说一个简单一点的办法,使用iframe父子窗口获取这个变量: 
1 保存下面代码为a.html 

Java代码   收藏代码
  1. <input type='button' value='获取b.html的sellerInfo变量值' οnclick="getValue()">  
  2. <iframe id='iframeb' src='b.html' style='display:none'>  
  3. </iframe>  
  4.   
  5. <script>  
  6. function getValue(){  
  7.     alert(frames['iframeb'].sellerInfo)   
  8. }     
  9. </script>  


2 保存下面代码为b.html 
Java代码   收藏代码
  1. <script>  
  2. var sellerInfo = 123;     
  3. </script>  


3 运行a.html的“获取sellerInfo值”按钮。 

4 其实jsp与html也是一样的道理。

2012年1月10日 23:04
0 0

看实际情况 你可以在a.jsp跳转到b.jsp的时候,直接把sellerInfo 对象作为参数传到b.jsp中的某个方法,再在这个方法中使用。

2012年1月10日 22:47
0 0

上面这种方法有点绕。

2012年1月10日 22:44
0 0

Java代码   收藏代码
  1. <script>     
  2. var rowdata=$('#cartTable').getRowData(ids[0]);        
  3. function setRowData(rowdata)        
  4. {       
  5.  <%        
  6.                     session.setAttribute("seller_id", rowdata.seller_id);        
  7.                     session.setAttribute("seller_name", rowdata.seller_name);        
  8.                     session.setAttribute("seller_person", rowdata.seller_person);        
  9.                     session.setAttribute("seller_phone", rowdata.seller_phone);        
  10.                     %>       
  11.     
  12. }     
  13. </script>   


思路: 
1.在a.jsp 中把sellerInfo对象转化为java对象,放到session 
2.在b.jsp中取出这个对象。再去用这个对象。

2012年1月10日 22:43
0 0

参照这个问题:http://www.iteye.co

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值