- 論壇徽章:
- 0
|
在學(xué)習(xí)Jquery EasyUi,目前發(fā)現(xiàn)一個問題,不知道如果解決。
目前有兩個頁面,a.jsp 和 b.jsp 。其中a.jsp中只有一個下拉菜單,用瀏覽器單獨(dú)訪問a.jsp的時候,是可以正常顯示的,請看a.jsp的部分代碼:
- <script type="text/javascript">
- jQuery(function($){
- $('#cc').combogrid({
- panelWidth:450,
- value:'006',
-
- idField:'code',
- textField:'name',
- url:'datagrid_data.json',
- columns:[[
- {field:'code',title:'Code',width:60},
- {field:'name',title:'Name',width:100},
- {field:'addr',title:'Address',width:120},
- {field:'col4',title:'Col41',width:100}
- ]]
- });
- });
- </script>
- <body>
復(fù)制代碼
下拉菜單:
- <select id="cc" name="dept" style="width:450px;"></select>
- </body>
復(fù)制代碼
b.jsp中有一個window,window的href為a.jsp,在b.jsp中不能夠正常顯示a.jsp的下拉菜單,請看b.jsp中的部分代碼:
- <script type="text/javascript">
- $(function(){
- $('#win').window({
- width:600,
- height:400,
- href:'a.jsp'
- })
- });
- </script>
- <body>
- <div id="win" iconCls="icon-save" title="My Window">
- Window Content
- </div>
- </body>
復(fù)制代碼
查詢之后,發(fā)現(xiàn)是b.jsp的window在顯示a.jsp時,a.jsp中頁面加載的時候調(diào)用的初始化語句塊沒有調(diào)用成功,具體的沒有調(diào)用的a.jsp的代碼為:- jQuery(function($){
- ........
- })
復(fù)制代碼
不知道為什么會出現(xiàn)這種問題,難道一個頁面被另一個頁面用href引用之后就不能調(diào)用自身的初始化語句塊了嗎?
問題補(bǔ)充:
shixy 寫道
關(guān)鍵是看你用什么方式來加載頁面,是普通html片段還是iframe
如果是iframe就不需要放到b.jsp里
解答:
easyui的window并不是iframe形式的,所以你的a.jsp中的$(function(){...})是無法被執(zhí)行的,你可以將其寫在window的onLoad事件里
- //去掉a.jsp中的js代碼,轉(zhuǎn)移到b.jsp里
- $(function(){
- $('#win').window({
- width:600,
- height:400,
- href:'a.jsp',
- //寫在onLoad事件里
- onLoad : function(){
- $('#cc').combogrid({
- panelWidth:450,
- value:'006',
- ......
-
- });
- }
- })
- });
復(fù)制代碼
轉(zhuǎn)自:http://bbs.ibeifeng.com/read-htm-tid-66070.html更多web前端開發(fā)問題:http://bbs.ibeifeng.com/thread-htm-fid-150.html
|
|