easyui-layout中的收缩层无法显示标题问题解决

先看问题描述效果图片:

easyui-layout中的收缩层无法显示标题问题解决_第1张图片

如上,我的查询条件是放在layout下面的一个可收缩层中,初始是收缩的,title显示不出来的话对使用者很不方便,代码如下:

 

<div id="__MODULE__PagePanel" class="easyui-layout" data-options="fit : true,border : false">
	<div id="__MODULE__SearchTab" title="条件筛选卡" data-options="region:'north',border:true,collapsed:true,iconCls:'icon-search'" style="height: 165px;overflow: auto;" align="center">
		<form id="__MODULE__SearchForm" onsubmit="$('#__MODULE__Search').click();return false;">
			<table class="tableForm">
				<tr>
					<th style="width: 170px;">关键字(支持模糊查询):</th>
					<td><input name="searchKeyWords" style="width: 315px;" /></td>
				</tr>
			</table>
            <div>
            	<a id="__MODULE__Search" href="javascript:void(0);" class="easyui-linkbutton" data-options="iconCls:'icon-search'" onclick="__MODULE__SearchFun();">过滤条件</a>
                <a href="javascript:void(0);" class="easyui-linkbutton" data-options="iconCls:'icon-cross'" onclick="__MODULE__CleanFun();">清空条件</a>
            </div>
		</form>
	</div>
	<div data-options="region:'center',border:false">
		<table id="__MODULE__Datagrid"></table>
	</div>
</div>


为什么显示不出title呢?查了很久也没找到原因,估计是easyui本身就有这个问题吧,目前我的临时解决方案是修改easyui源码添加一个自定义属性上去,属性名称:closedTitle,修改后的效果图片如下:

 


修改后的代码如下:

 

<div id="__MODULE__PagePanel" class="easyui-layout" data-options="fit : true,border : false">
	<div id="__MODULE__SearchTab" title="条件筛选卡" data-options="closedTitle:'高级条件筛选卡(点击展开)',region:'north',border:true,collapsed:true,iconCls:'icon-search'" style="height: 165px;overflow: auto;" align="center">
		<form id="__MODULE__SearchForm" onsubmit="$('#__MODULE__Search').click();return false;">
			<table class="tableForm">
				<tr>
					<th style="width: 170px;">关键字(支持模糊查询):</th>
					<td><input name="searchKeyWords" style="width: 315px;" /></td>
				</tr>
			</table>
            <div>
            	<a id="__MODULE__Search" href="javascript:void(0);" class="easyui-linkbutton" data-options="iconCls:'icon-search'" onclick="__MODULE__SearchFun();">过滤条件</a>
                <a href="javascript:void(0);" class="easyui-linkbutton" data-options="iconCls:'icon-cross'" onclick="__MODULE__CleanFun();">清空条件</a>
            </div>
		</form>
	</div>
	<div data-options="region:'center',border:false">
		<table id="__MODULE__Datagrid"></table>
	</div>
</div>


修改jquery.easyui.min.js【easyui版本为1.3.1】如下:

 

1.在4004行位置后添加代码如下:

 

4003 var _309=$.data(_306,"layout").panels;
4004 var p=_309[_307];
4005 var _Cstitle;
4006 var _closedTitle=p.panel("options").closedTitle;
4007 if(_closedTitle) _Cstitle = _closedTitle;
4008 else _Cstitle = ' '; 
4009 if(p.panel("options").onBeforeCollapse.call(p)==false){
4010 return;
4011 }


2.在原来4043行的title属性修改为上面定义的_Cstitle变量,代码如下:

 

 

var p=$("<div></div>").appendTo(_306).panel({cls:"layout-expand",title:_Cstitle,closed:true,doSize:false,tools:[{iconCls:icon,handler:function(){
_30f(_306,_307);
return false;
}}]});


这样你在HTML模板文件中就可以定义closedTitle属性作为收缩后的标题了哦,效果图如下:

 

easyui-layout中的收缩层无法显示标题问题解决_第2张图片


注意:本文由hongping626在CSDN首发,如需转载请注明出处!

 

你可能感兴趣的:(easyui)