mirror of
https://gitee.com/apiadmin/ApiAdmin.git
synced 2025-04-06 03:58:00 +08:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
21cfecc76c
@ -1,5 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
namespace app\admin\controller;
|
namespace app\admin\controller;
|
||||||
|
use think\Validate;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 菜单管理控制器
|
* 菜单管理控制器
|
||||||
@ -21,14 +22,26 @@ class Menu extends Base {
|
|||||||
'field' => 'url',
|
'field' => 'url',
|
||||||
'info' => '菜单URL'
|
'info' => '菜单URL'
|
||||||
],
|
],
|
||||||
[
|
|
||||||
'field' => 'type',
|
|
||||||
'info' => '菜单类型'
|
|
||||||
],
|
|
||||||
[
|
[
|
||||||
'field' => 'level',
|
'field' => 'level',
|
||||||
'info' => '等级'
|
'info' => '等级'
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
'field' => 'post',
|
||||||
|
'info' => 'Post'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'field' => 'get',
|
||||||
|
'info' => 'Get'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'field' => 'put',
|
||||||
|
'info' => 'Put'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'field' => 'delete',
|
||||||
|
'info' => 'Delete'
|
||||||
|
],
|
||||||
[
|
[
|
||||||
'field' => 'hide',
|
'field' => 'hide',
|
||||||
'info' => '隐藏'
|
'info' => '隐藏'
|
||||||
@ -81,6 +94,7 @@ class Menu extends Base {
|
|||||||
'info' => '',
|
'info' => '',
|
||||||
'href' => url('Menu/add'),
|
'href' => url('Menu/add'),
|
||||||
'param'=> [$this->primaryKey],
|
'param'=> [$this->primaryKey],
|
||||||
|
'class' => 'refresh'
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
'hide' => [
|
'hide' => [
|
||||||
@ -96,21 +110,60 @@ class Menu extends Base {
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
'type' => [
|
'post' => [
|
||||||
'module' => 'label',
|
'module' => 'icon',
|
||||||
'rule' => [
|
'rule' => [
|
||||||
[
|
[
|
||||||
'info' => '方法类功能',
|
'info' => '',
|
||||||
'class' => 'label label-info'
|
'class' => 'fa fa-close'
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
'info' => '模块类功能',
|
'info' => '',
|
||||||
'class' => 'label label-primary'
|
'class' => 'fa fa-check'
|
||||||
|
]
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'get' => [
|
||||||
|
'module' => 'icon',
|
||||||
|
'rule' => [
|
||||||
|
[
|
||||||
|
'info' => '',
|
||||||
|
'class' => 'fa fa-close'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'info' => '',
|
||||||
|
'class' => 'fa fa-check'
|
||||||
|
]
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'put' => [
|
||||||
|
'module' => 'icon',
|
||||||
|
'rule' => [
|
||||||
|
[
|
||||||
|
'info' => '',
|
||||||
|
'class' => 'fa fa-close'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'info' => '',
|
||||||
|
'class' => 'fa fa-check'
|
||||||
|
]
|
||||||
|
]
|
||||||
|
],
|
||||||
|
'delete' => [
|
||||||
|
'module' => 'icon',
|
||||||
|
'rule' => [
|
||||||
|
[
|
||||||
|
'info' => '',
|
||||||
|
'class' => 'fa fa-close'
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'info' => '',
|
||||||
|
'class' => 'fa fa-check'
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
'data' => $data //这个数据应该是从数据库中查出来
|
'data' => $data
|
||||||
];
|
];
|
||||||
$this->result($table, ReturnCode::GET_TEMPLATE_SUCCESS);
|
$this->result($table, ReturnCode::GET_TEMPLATE_SUCCESS);
|
||||||
}
|
}
|
||||||
@ -122,7 +175,7 @@ class Menu extends Base {
|
|||||||
[
|
[
|
||||||
'name' => 'require',
|
'name' => 'require',
|
||||||
],[
|
],[
|
||||||
'name.require' => '名称必须',
|
'name.require' => '菜单名称不能为空',
|
||||||
]
|
]
|
||||||
)->save($this->request->post());
|
)->save($this->request->post());
|
||||||
if(false === $result){
|
if(false === $result){
|
||||||
@ -132,6 +185,7 @@ class Menu extends Base {
|
|||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
$data = \app\admin\model\Menu::where([])->column('name',$this->primaryKey);
|
$data = \app\admin\model\Menu::where([])->column('name',$this->primaryKey);
|
||||||
|
$defaultFather = $this->request->get($this->primaryKey);
|
||||||
$form = [
|
$form = [
|
||||||
'tempType' => 'add',
|
'tempType' => 'add',
|
||||||
'formAttr' => [
|
'formAttr' => [
|
||||||
@ -156,7 +210,7 @@ class Menu extends Base {
|
|||||||
'info' => '父级菜单:',
|
'info' => '父级菜单:',
|
||||||
'attr' => [
|
'attr' => [
|
||||||
'name' => 'fid',
|
'name' => 'fid',
|
||||||
'value' => '',
|
'value' => $defaultFather,
|
||||||
'options' => $data
|
'options' => $data
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
@ -174,15 +228,29 @@ class Menu extends Base {
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
'module' => 'radio',
|
'module' => 'checkbox',
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'info' => '菜单类型:',
|
'info' => '访客权限:',
|
||||||
'attr' => [
|
'attr' => [
|
||||||
'name' => 'type',
|
[
|
||||||
'value' => '',
|
'name' => 'auth[get]',
|
||||||
'options' => [
|
'desc' => 'GET',
|
||||||
'模块类功能',
|
'value' => ''
|
||||||
'方法类功能'
|
],
|
||||||
|
[
|
||||||
|
'name' => 'auth[put]',
|
||||||
|
'desc' => 'PUT',
|
||||||
|
'value' => ''
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'auth[post]',
|
||||||
|
'desc' => 'POST',
|
||||||
|
'value' => ''
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'auth[delete]',
|
||||||
|
'desc' => 'DELETE',
|
||||||
|
'value' => ''
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
@ -199,19 +267,6 @@ class Menu extends Base {
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
[
|
|
||||||
'module' => 'radio',
|
|
||||||
'description' => '',
|
|
||||||
'info' => '是否推荐:「该配置只对模块类功能生效」',
|
|
||||||
'attr' => [
|
|
||||||
'name' => 'recommend',
|
|
||||||
'value' => '',
|
|
||||||
'options' => [
|
|
||||||
'普通模块',
|
|
||||||
'推荐模块'
|
|
||||||
]
|
|
||||||
]
|
|
||||||
],
|
|
||||||
[
|
[
|
||||||
'module' => 'text',
|
'module' => 'text',
|
||||||
'description' => '',
|
'description' => '',
|
||||||
@ -250,17 +305,17 @@ class Menu extends Base {
|
|||||||
|
|
||||||
public function edit(){
|
public function edit(){
|
||||||
if( $this->request->isPut() ){
|
if( $this->request->isPut() ){
|
||||||
$menuModel = new \app\admin\model\Menu();
|
$data = $this->request->put();
|
||||||
$result = $menuModel->allowField(true)->validate(
|
$validate = new Validate([
|
||||||
[
|
|
||||||
'name' => 'require',
|
'name' => 'require',
|
||||||
],[
|
],[
|
||||||
'name.require' => '名称必须',
|
'name.require' => '菜单名称不能为空',
|
||||||
]
|
]);
|
||||||
)->update($this->request->put());
|
if(!$validate->check($data)){
|
||||||
if(false === $result){
|
$this->error($validate->getError());
|
||||||
$this->error($menuModel->getError());
|
|
||||||
}else{
|
}else{
|
||||||
|
$menuModel = new \app\admin\model\Menu();
|
||||||
|
$menuModel->allowField(true)->update($data);
|
||||||
$this->success('操作成功!', url('Menu/index'));
|
$this->success('操作成功!', url('Menu/index'));
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
@ -269,8 +324,8 @@ class Menu extends Base {
|
|||||||
$form = [
|
$form = [
|
||||||
'tempType' => 'edit',
|
'tempType' => 'edit',
|
||||||
'formAttr' => [
|
'formAttr' => [
|
||||||
'target' => url('Menu/add'),
|
'target' => url('Menu/edit'),
|
||||||
'formId' => 'add-menu-form',
|
'formId' => 'edit-menu-form',
|
||||||
'backUrl' => url('Menu/index'),
|
'backUrl' => url('Menu/index'),
|
||||||
],
|
],
|
||||||
'formList' => [
|
'formList' => [
|
||||||
@ -284,6 +339,16 @@ class Menu extends Base {
|
|||||||
'placeholder' => ''
|
'placeholder' => ''
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
|
[
|
||||||
|
'module' => 'hidden',
|
||||||
|
'description' => '',
|
||||||
|
'info' => '',
|
||||||
|
'attr' => [
|
||||||
|
'name' => 'id',
|
||||||
|
'value' => $detail['id'],
|
||||||
|
'placeholder' => ''
|
||||||
|
]
|
||||||
|
],
|
||||||
[
|
[
|
||||||
'module' => 'select',
|
'module' => 'select',
|
||||||
'description' => '',
|
'description' => '',
|
||||||
@ -308,15 +373,29 @@ class Menu extends Base {
|
|||||||
]
|
]
|
||||||
],
|
],
|
||||||
[
|
[
|
||||||
'module' => 'radio',
|
'module' => 'checkbox',
|
||||||
'description' => '',
|
'description' => '',
|
||||||
'info' => '菜单类型:',
|
'info' => '访客权限:',
|
||||||
'attr' => [
|
'attr' => [
|
||||||
'name' => 'type',
|
[
|
||||||
'value' => $detail['type'],
|
'name' => 'auth[get]',
|
||||||
'options' => [
|
'desc' => 'GET',
|
||||||
'模块类功能',
|
'value' => ''
|
||||||
'方法类功能'
|
],
|
||||||
|
[
|
||||||
|
'name' => 'auth[put]',
|
||||||
|
'desc' => 'PUT',
|
||||||
|
'value' => ''
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'auth[post]',
|
||||||
|
'desc' => 'POST',
|
||||||
|
'value' => ''
|
||||||
|
],
|
||||||
|
[
|
||||||
|
'name' => 'auth[delete]',
|
||||||
|
'desc' => 'DELETE',
|
||||||
|
'value' => ''
|
||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
@ -333,19 +412,6 @@ class Menu extends Base {
|
|||||||
]
|
]
|
||||||
]
|
]
|
||||||
],
|
],
|
||||||
[
|
|
||||||
'module' => 'radio',
|
|
||||||
'description' => '',
|
|
||||||
'info' => '是否推荐:「该配置只对模块类功能生效」',
|
|
||||||
'attr' => [
|
|
||||||
'name' => 'recommend',
|
|
||||||
'value' => $detail['recommend'],
|
|
||||||
'options' => [
|
|
||||||
'普通模块',
|
|
||||||
'推荐模块'
|
|
||||||
]
|
|
||||||
]
|
|
||||||
],
|
|
||||||
[
|
[
|
||||||
'module' => 'text',
|
'module' => 'text',
|
||||||
'description' => '',
|
'description' => '',
|
||||||
@ -383,7 +449,18 @@ class Menu extends Base {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public function del(){
|
public function del(){
|
||||||
$this->error('失败');
|
if( $this->request->isDelete() ){
|
||||||
|
$key = $this->request->delete($this->primaryKey);
|
||||||
|
$childNum = \app\admin\model\Menu::where(['fid' => $key])->count();
|
||||||
|
if( $childNum ){
|
||||||
|
$this->error('当前菜单存在子菜单,删除失败!');
|
||||||
|
}
|
||||||
|
$delNum = \app\admin\model\Menu::destroy($key);
|
||||||
|
if( $delNum ){
|
||||||
|
$this->success('操作成功!', url('Menu/index'));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
$this->error('操作失败!');
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
@ -30,7 +30,8 @@
|
|||||||
* @param msg
|
* @param msg
|
||||||
* @param wait 等待时间(毫秒)
|
* @param wait 等待时间(毫秒)
|
||||||
*/
|
*/
|
||||||
$.alertMsg = function( msg, wait = 2800 ){
|
$.alertMsg = function( msg, wait ){
|
||||||
|
wait = wait ? wait : 2800;
|
||||||
var dialog = bootbox.dialog({
|
var dialog = bootbox.dialog({
|
||||||
message: '<p class="text-center">'+msg+'</p>',
|
message: '<p class="text-center">'+msg+'</p>',
|
||||||
closeButton: false
|
closeButton: false
|
||||||
@ -45,7 +46,8 @@
|
|||||||
* @param url
|
* @param url
|
||||||
* @param urlData
|
* @param urlData
|
||||||
*/
|
*/
|
||||||
$.refresh = function ( url, urlData = '' ) {
|
$.refresh = function ( url, urlData ) {
|
||||||
|
urlData = urlData ? urlData : '';
|
||||||
$.ajax({
|
$.ajax({
|
||||||
type: "GET",
|
type: "GET",
|
||||||
url: url,
|
url: url,
|
||||||
@ -98,7 +100,7 @@
|
|||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ajax Post 表单提交(增)
|
* Ajax Post 表单提交(增) *
|
||||||
*/
|
*/
|
||||||
bodyDom.on('click', '.ajax-post', function() {
|
bodyDom.on('click', '.ajax-post', function() {
|
||||||
var message,query,form,target;
|
var message,query,form,target;
|
||||||
@ -139,7 +141,7 @@
|
|||||||
});
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Ajax Put 表单提交(改)
|
* Ajax Put 表单提交(改) *
|
||||||
*/
|
*/
|
||||||
bodyDom.on('click', '.ajax-put', function() {
|
bodyDom.on('click', '.ajax-put', function() {
|
||||||
var message,query,form,target;
|
var message,query,form,target;
|
||||||
@ -162,18 +164,11 @@
|
|||||||
$.alertMsg(message);
|
$.alertMsg(message);
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
if (data.url) {
|
if (data.url) {
|
||||||
location.href = data.url;
|
$.refresh(data.url);
|
||||||
} else {
|
|
||||||
location.reload();
|
|
||||||
}
|
}
|
||||||
}, wait);
|
}, wait);
|
||||||
} else {
|
} else {
|
||||||
$.alertMsg(data.msg);
|
$.alertMsg(data.msg);
|
||||||
setTimeout(function() {
|
|
||||||
if (data.url) {
|
|
||||||
location.href = data.url;
|
|
||||||
}
|
|
||||||
}, wait);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
return false;
|
return false;
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
* @returns {string}
|
* @returns {string}
|
||||||
*/
|
*/
|
||||||
$.buildAddForm = function ( formObj ) {
|
$.buildAddForm = function ( formObj ) {
|
||||||
return buildForm(formObj, 'box-success');
|
return buildForm(formObj, 'box-success', 'ajax-post');
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -17,16 +17,17 @@
|
|||||||
* @returns {string}
|
* @returns {string}
|
||||||
*/
|
*/
|
||||||
$.buildEditForm = function ( formObj ) {
|
$.buildEditForm = function ( formObj ) {
|
||||||
return buildForm(formObj, 'box-warning');
|
return buildForm(formObj, 'box-warning', 'ajax-put');
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据规则创建表单
|
* 根据规则创建表单
|
||||||
* @param formObj 表单数据对象
|
* @param formObj 表单数据对象
|
||||||
* @param boxType box样式
|
* @param boxType box样式
|
||||||
|
* @param method 数据提交方式
|
||||||
* @returns {string}
|
* @returns {string}
|
||||||
*/
|
*/
|
||||||
function buildForm( formObj, boxType ) {
|
function buildForm( formObj, boxType, method ) {
|
||||||
var formHtml = '<div class="box '+ boxType +'" id="formBox"><div class="box-body">';
|
var formHtml = '<div class="box '+ boxType +'" id="formBox"><div class="box-body">';
|
||||||
formHtml += '<div class="box-header with-border"><h3 class="box-title">新增菜单</h3></div>';
|
formHtml += '<div class="box-header with-border"><h3 class="box-title">新增菜单</h3></div>';
|
||||||
formHtml += '<form id="'+ formObj.formAttr.formId +'" action="'+ formObj.formAttr.target +'"><div class="box-body">';
|
formHtml += '<form id="'+ formObj.formAttr.formId +'" action="'+ formObj.formAttr.target +'"><div class="box-body">';
|
||||||
@ -41,14 +42,41 @@
|
|||||||
case 'radio':
|
case 'radio':
|
||||||
formHtml += buildRadio(value);
|
formHtml += buildRadio(value);
|
||||||
break;
|
break;
|
||||||
|
case 'hidden':
|
||||||
|
formHtml += buildHidden(value);
|
||||||
|
break;
|
||||||
|
case 'checkbox':
|
||||||
|
formHtml += buildCheckbox(value);
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
formHtml += '</div><div class="box-footer">';
|
formHtml += '</div><div class="box-footer">';
|
||||||
formHtml += '<button type="submit" target-form="'+ formObj.formAttr.formId +'" class="btn btn-primary ajax-post">确认提交</button>';
|
formHtml += '<button type="submit" target-form="'+ formObj.formAttr.formId +'" class="btn btn-primary '+ method +'">确认提交</button>';
|
||||||
formHtml += ' <a class="btn btn-default refresh" url="'+ formObj.formAttr.backUrl +'" >放弃返回</a></div></form></div></div>';
|
formHtml += ' <a class="btn btn-default refresh" url="'+ formObj.formAttr.backUrl +'" >放弃返回</a></div></form></div></div>';
|
||||||
return formHtml;
|
return formHtml;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function buildCheckbox( checkboxObj ) {
|
||||||
|
var formHtml = '<div>';
|
||||||
|
formHtml += '<div class="col-xs-8 form-group"><label>'+ checkboxObj.info +'</label>';
|
||||||
|
formHtml += '<div class="input-group radio">';
|
||||||
|
if( checkboxObj.attr ){
|
||||||
|
$.each(checkboxObj.attr, function (index, value) {
|
||||||
|
if( value.value ){
|
||||||
|
formHtml += '<input type="checkbox" checked name="'+ value.name +'"> '+ value.desc +' ';
|
||||||
|
}else{
|
||||||
|
formHtml += '<input type="checkbox" name="'+ value.name +'"> '+ value.desc +' ';
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
formHtml += '</div>';
|
||||||
|
if( checkboxObj.description ){
|
||||||
|
formHtml += ' <div class="col-xs-4 form-group" style="margin-top: 30px"><span class="label label-info">'+ checkboxObj.description +'</span></div>';
|
||||||
|
}
|
||||||
|
formHtml += '</div></div>';
|
||||||
|
return formHtml;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 创建文本框
|
* 创建文本框
|
||||||
* @param inputObj
|
* @param inputObj
|
||||||
@ -97,6 +125,15 @@
|
|||||||
return formHtml;
|
return formHtml;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 创建隐藏表单
|
||||||
|
* @param hiddenObj
|
||||||
|
* @returns {string}
|
||||||
|
*/
|
||||||
|
function buildHidden( hiddenObj ) {
|
||||||
|
return '<input type="hidden" class="form-control" value="'+ hiddenObj.attr.value +'" name="'+ hiddenObj.attr.name +'">';
|
||||||
|
}
|
||||||
|
|
||||||
function buildTextarea( textareaObj ) {
|
function buildTextarea( textareaObj ) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -81,7 +81,7 @@
|
|||||||
}else{
|
}else{
|
||||||
if( tableObj.typeRule[fieldName] ){
|
if( tableObj.typeRule[fieldName] ){
|
||||||
var rule = tableObj.typeRule[fieldName];
|
var rule = tableObj.typeRule[fieldName];
|
||||||
var styleList ,detailInfo;
|
var styleList ,detailInfo, classAttr = '';
|
||||||
switch (rule.module){
|
switch (rule.module){
|
||||||
case 'label':
|
case 'label':
|
||||||
if( rule.rule[dataValue[fieldName]] ){
|
if( rule.rule[dataValue[fieldName]] ){
|
||||||
@ -96,11 +96,22 @@
|
|||||||
styleList = rule.rule;
|
styleList = rule.rule;
|
||||||
detailInfo = prepareInfo( styleList, dataValue, fieldName);
|
detailInfo = prepareInfo( styleList, dataValue, fieldName);
|
||||||
paramStr = prepareParamStr( styleList, dataValue );
|
paramStr = prepareParamStr( styleList, dataValue );
|
||||||
dataListHtml += '<td><a url="'+styleList['href']+'" data="'+paramStr+'">' + detailInfo + '</a></td>';
|
if( styleList['class'] ){
|
||||||
|
classAttr = 'class="'+ styleList['class'] +'"';
|
||||||
|
}
|
||||||
|
dataListHtml += '<td><a '+ classAttr +' url="'+styleList['href']+'" data="'+paramStr+'">' + detailInfo + '</a></td>';
|
||||||
break;
|
break;
|
||||||
case 'date':
|
case 'date':
|
||||||
dataListHtml += '<td>' + $.formatDate(dataValue[fieldName]) + '</td>';
|
dataListHtml += '<td>' + $.formatDate(dataValue[fieldName]) + '</td>';
|
||||||
break;
|
break;
|
||||||
|
case 'icon':
|
||||||
|
if( rule.rule[dataValue[fieldName]] ){
|
||||||
|
styleList = rule.rule[dataValue[fieldName]];
|
||||||
|
dataListHtml += '<td><i class="'+styleList['class']+'"></i></td>';
|
||||||
|
}else{
|
||||||
|
dataListHtml += '<td style="color:red;">' + dataValue[fieldName] + '</td>';
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
dataListHtml += '<td>' + dataValue[fieldName] + '</td>';
|
dataListHtml += '<td>' + dataValue[fieldName] + '</td>';
|
||||||
|
Loading…
x
Reference in New Issue
Block a user