免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1754 | 回复: 0
打印 上一主题 下一主题

[其他] Jquery EasyUi 调用问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2014-06-05 11:10 |只看该作者 |倒序浏览
在学习Jquery EasyUi,目前发现一个问题,不知道如果解决。

目前有两个页面,a.jsp 和 b.jsp 。其中a.jsp中只有一个下拉菜单,用浏览器单独访问a.jsp的时候,是可以正常显示的,请看a.jsp的部分代码:

  1. <script type="text/javascript">  
  2.     jQuery(function($){  
  3.         $('#cc').combogrid({  
  4.             panelWidth:450,  
  5.             value:'006',  
  6.   
  7.             idField:'code',  
  8.             textField:'name',  
  9.             url:'datagrid_data.json',  
  10.             columns:[[  
  11.                 {field:'code',title:'Code',width:60},  
  12.                 {field:'name',title:'Name',width:100},  
  13.                 {field:'addr',title:'Address',width:120},  
  14.                 {field:'col4',title:'Col41',width:100}  
  15.             ]]  
  16.         });  
  17.     });  
  18. </script>  
  19. <body>  
复制代码

下拉菜单:
  1. <select id="cc" name="dept" style="width:450px;"></select>            
  2. </body>
复制代码

b.jsp中有一个window,window的href为a.jsp,在b.jsp中不能够正常显示a.jsp的下拉菜单,请看b.jsp中的部分代码:
  1. <script type="text/javascript">  
  2.     $(function(){  
  3.         $('#win').window({  
  4.             width:600,  
  5.             height:400,  
  6.             href:'a.jsp'  
  7.         })  
  8.     });      
  9. </script>  
  10. <body>  
  11.       <div id="win" iconCls="icon-save" title="My Window">  
  12.         Window Content  
  13.       </div>  
  14. </body>  
复制代码

查询之后,发现是b.jsp的window在显示a.jsp时,a.jsp中页面加载的时候调用的初始化语句块没有调用成功,具体的没有调用的a.jsp的代码为:
  1. jQuery(function($){  
  2.    ........  
  3. })  
复制代码

不知道为什么会出现这种问题,难道一个页面被另一个页面用href引用之后就不能调用自身的初始化语句块了吗?  
问题补充:
shixy 写道
关键是看你用什么方式来加载页面,是普通html片段还是iframe  
如果是iframe就不需要放到b.jsp里
解答:
easyui的window并不是iframe形式的,所以你的a.jsp中的$(function(){...})是无法被执行的,你可以将其写在window的onLoad事件里
  1. //去掉a.jsp中的js代码,转移到b.jsp里  
  2. $(function(){   
  3.         $('#win').window({   
  4.             width:600,   
  5.             height:400,   
  6.             href:'a.jsp',  
  7.             //写在onLoad事件里  
  8.            onLoad : function(){  
  9.               $('#cc').combogrid({   
  10.                  panelWidth:450,   
  11.                  value:'006',   
  12.                  ......  
  13.               
  14.                });   
  15.            }  
  16.         })   
  17.     });
复制代码

转自:http://bbs.ibeifeng.com/read-htm-tid-66070.html更多web前端开发问题:http://bbs.ibeifeng.com/thread-htm-fid-150.html

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP