modified 完成表格样式自动适配

This commit is contained in:
zhaoxiang 2016-11-08 17:29:02 +08:00
parent a48b7c4bf7
commit 802c5b5006
2 changed files with 29 additions and 25 deletions

View File

@ -57,18 +57,18 @@ class Menu extends Base {
[
'info' => '编辑',
'href' => url('Menu/edit'),
'class'=> 'success',
'class'=> 'btn-warning',
'param'=> [$this->primaryKey],
'icon' => 'check',
'icon' => 'fa fa-pencil',
'confirm' => 0,
'show' => ''
],
[
'info' => '删除',
'href' => url('Menu/del'),
'class'=> 'danger',
'class'=> 'btn-danger',
'param'=> [$this->primaryKey],
'icon' => 'trash',
'icon' => 'fa fa-trash',
'confirm' => 1,
'show' => ''
]
@ -109,17 +109,7 @@ class Menu extends Base {
]
]
],
'data' => [
[
'id' => 1,
'name' => '测试',
'url' => 'ssssss',
'type' => 1,
'hide' => 1,
'level' => 3,
'sort' => 4
]
]
'data' => [] //这个数据应该是从数据库中查出来
];
$this->result($table,200);
}

View File

@ -47,14 +47,7 @@
var topHtml = '<div class="btn-group margin-bottom">';
if( tableObj.topButton ){
$.each(tableObj.topButton, function(index, value) {
if( value.confirm ){
value.class += ' confirm';
}
if( value.icon ){
topHtml += '<button href="'+value.href+'" type="button" class="btn '+value.class+'"><i class="'+value.icon+'"></i> '+value.info+'</button>';
}else{
topHtml += '<button href="'+value.href+'" type="button" class="btn '+value.class+'">'+value.info+'</button>';
}
topHtml += createButton(value);
});
}
topHtml += '</div>';
@ -67,16 +60,21 @@
* @returns {string}
*/
function buildDataList( tableObj ) {
var paramStr;
var dataListHtml = '<tr><td><input type="checkbox"></td>';
$.each(tableObj.data, function (dataIndex, dataValue) {
$.each(tableObj.header, function (fieldIndex, fieldValue) {
var fieldName = fieldValue.field;
if( fieldName == 'action' ){
dataListHtml += '<td><div class="btn-group">';
$.each(tableObj.rightButton, function(buttonIndex, buttonValue) {
dataListHtml += createButton(buttonValue, dataValue);
});
dataListHtml += '</div></td>';
}else{
if( tableObj.typeRule[fieldName] ){
var rule = tableObj.typeRule[fieldName];
var styleList ,detailInfo, paramStr;
var styleList ,detailInfo;
switch (rule.module){
case 'label':
if( rule.rule[dataValue[fieldName]] ){
@ -107,6 +105,22 @@
return dataListHtml;
}
function createButton( buttonValue, dataValue ) {
var paramStr = '', buttonStr = '';
if( buttonValue.confirm ){
buttonValue.class += ' confirm';
}
if( dataValue ){
paramStr = prepareParamStr( buttonValue, dataValue );
}
if( buttonValue.icon ){
buttonStr = '<button url="'+buttonValue.href+'" data="'+paramStr+'" type="button" class="btn '+buttonValue.class+'"><i class="'+buttonValue.icon+'"></i> '+buttonValue.info+'</button>';
}else{
buttonStr = '<button url="'+buttonValue.href+'" data="'+paramStr+'" type="button" class="btn '+buttonValue.class+'">'+buttonValue.info+'</button>';
}
return buttonStr;
}
function prepareInfo( styleList, dataValue, fieldName ) {
var detailInfo;
if( styleList['info'] && styleList['info'].length ){