前言
圖解
以下為使用遇到問題小記
status字段
顯示效果:
1.1數(shù)據(jù)庫
1.2JS
{field: 'status', title: __('Status'),formatter: Table.api.formatter.status,searchList: {normal: __('Normal'), hidden: __('Hidden')}},
或者
{field: 'status', title: __('Status'),formatter: Table.api.formatter.status},
1.3PHP
<?php
namespace app\admin\model;
use think\Model;
class Indexpic extends Model
{
// 表名
protected $name = '表名';
// 自動寫入時間戳字段
protected $autoWriteTimestamp = false;
// 定義時間戳字段名
protected $createTime = false;
protected $updateTime = false;
// 追加屬性
protected $append = [
'status_text'
];
public function getStatusList() {
return ['normal' => __('Normal'), 'hidden' => __('Hidden')];
}
public function getStatusTextAttr($value, $data){
$value = $value ? $value : $data['status'];
$list = $this->getStatusList();
return isset($list[$value]) ? $list[$value] : '';
}
}
隱藏默認(rèn)按鈕
1.1找到對應(yīng)的JS設(shè)置為空
1.2效果
1.3原因:
作者通過獲取按鈕名稱來增加按鈕
按鈕組
<script>
buttons: [{
name: 'detail',//按鈕唯一標(biāo)識,其中add/edit/del/dragsort已經(jīng)被占用,請勿使用非竿。
text: '同步',//按鈕的文本內(nèi)容,如果不需要顯示文本可忽略
title: '同步',//鼠標(biāo)移上去的標(biāo)題或彈窗/選項顯示的標(biāo)題
icon: 'fa fa-list',//按鈕的圖標(biāo),請使用font-awesome圖標(biāo)庫
extend:'data-toggle="tooltip"',//按鈕擴(kuò)展信息--比如我們想在新窗口中打開鏈接耀态,則配置extend:' target="_blank"'即可
classname: 'btn btn-xs btn-success btn-ajax disabletongbu',
url: 'order/edit',//按鈕的鏈接/Ajax事件請求的URL/彈窗鏈接/選項卡鏈接
//是否隱藏按鈕,按鈕默認(rèn)顯示,支持function和bool類型
hidden:function (row,value,index) {
//根據(jù)某個條件進(jìn)行隱藏此按鈕
console.log(row);//返回數(shù)據(jù)
console.log(index);//下標(biāo)
console.log(value);//該button配置信息
},
success:function(data, ret){
//成功后的返回
able.bootstrapTable('refresh');
},error:function(){
//失敗后的返回
},
callback: function (data) {
//彈窗回傳的回調(diào),只針對btn-dialog事件,需要在對應(yīng)打開的頁面中使用Fast.api.close(data);進(jìn)行回傳數(shù)據(jù)
Layer.alert("接收到回傳數(shù)據(jù):" + JSON.stringify(data), {title: "回傳數(shù)據(jù)"});
},
refresh:function () {
// 自動刷新,只針對btn-ajax事件--未實踐
},
confirm:function () {
//確認(rèn)框提示文字,配置后會在確認(rèn)操作再執(zhí)行對應(yīng)的事件,只針對btn-ajax/btn-dialog/btn-addtabs事件
}
}]
</script>