easyui tab 更新页面a.jsp,a.jsp中存在easyui-window,easyui-windwo弹出窗口样式、js失效问题。
master.jsp内容如下:
<div id="divtabs" class="easyui-tabs" style="height:auto"> <div title="信息列表"></div> </div>
我要动态更新master.jsp信息列表的内容,更新方法如下,
var tab = $('#divtabs').tabs('getTab',0); // get selected panel $('#divtabs').tabs('update', { tab : tab, options : { title : node.text, href:node.url } }); tab.panel('refresh');
node.url对应一个新的a.jsp页面,内容如下:
............省略 <div id="divadd" class="easyui-window" title="管理员信息添加" style="padding:20px;top:100px;"> <table style="min-height:300px;"> <tr> <td>用户名:</td> <td><input id="txtLoginname" class="easyui-textbox" type="text" name="loginname" data-options="required:true,missingMessage:'请填写用户名名'"></input> </td> </tr> </table> </div>
弹出窗口divadd,样式失效。解决办法如下:
1、给窗口设置属性inline,当为true时,相当于和父页面是同一个页面;false时,相当于新的页面(估计这就是样式失效的原因)。设置此属性时,窗口位置会改变,所以还有设置divadd 样式style="top:100px;"
$("#divadd").window({inline:true});
2、使用$.parser.parse('#divadd');页面加载完成后,使用这个解析器,会重新解析divadd下面的easyui元素。原理,我也不清楚。
如果有其他办法,各位可以评论下。