记录一次在fastadmin中列表顶部增加操作按钮并展开页面操作
index.html
<a href="javascript:;" class="btn btn-success btn-adds btn-disabled disabled {:$auth->check('match/article/adds')?'':'hide'}" title="{:__('指定评委')}" ><i class="fa fa-email"></i> {:__('指定评委')}</a>
定义一个新的操作按钮,这个是为了携带列表中被选中的id,
require-table.js
config: {
checkboxtd: 'tbody>tr>td.bs-checkbox',
toolbar: '.toolbar',
refreshbtn: '.btn-refresh',
addbtn: '.btn-add',
addsbtn: '.btn-adds',
editbtn: '.btn-edit',
delbtn: '.btn-del',
importbtn: '.btn-import',
multibtn: '.btn-multi',
disabledbtn: '.btn-disabled',
editonebtn: '.btn-editone',
restoreonebtn: '.btn-restoreone',
destroyonebtn: '.btn-destroyone',
restoreallbtn: '.btn-restoreall',
destroyallbtn: '.btn-destroyall',
dragsortfield: 'weigh',
},
addsbtn: '.btn-adds',
// 添加按钮事件
toolbar.on('click', Table.config.addsbtn, function () {
var ids = Table.api.selectedids(table);
var url = options.extend.adds_url;
/*if (url.indexOf("{ids}") !== -1) {
url = Table.api.replaceurl(url, {ids: ids.length > 0 ? ids.join(",") : 0}, table);
}*/
url = Table.api.replaceurl(url, {ids: ids.length > 0 ? ids.join(",") : 0}, table);
Fast.api.open(url, $(this).data("original-title") || $(this).attr("title") || __('Add'), $(this).data() || {});
});
增加一个新的点击事件,注意将url携带参数的判断注释掉,
页面对应的js文件:
首先在index方法中定义“adds_url”
然后定义一个新的操作方法
adds: function () { Controller.api.bindevent(); },
控制器中定义一个类似edit的操作方法,负责接收链接中携带的参数
PS:
如果不需要页面展开,只是一个单纯操作,直接在index方法中定义ajax事件即可

浙公网安备 33010602011771号