Tp-admin后端开发框架是波波基于ThinkAdmin V5进行二次完善的一套后端开发框架。其核心是thinkPHP5.0,UI界面风格采用的是layui。
之所以开发这套框架也是不想在项目开发中一次一次造轮子。同时经过多年的完善打磨,这套框架在数百个大小项目中都得到了检验。更多详情可参考菠菜园文章《开源thinkPHP5后台开发框架tp-admin》。
今天增加的新事件是data-getmodal,具体代码:
- /*!注册data-getmodal事件行为 */
- this.$body.on('click', '[data-getmodal]', function () {
- var id = $(this).attr('data-getmodal') || (function () {
- var data = [];
- return $($(this).attr('data-list-target') || 'input.list-check-box').map(function () {
- (this.checked) && data.push(this.value);
- }), data.join(',');
- }).call(this);
- if (id.length < 1) {
- return $.msg.tips('请选择需要操作的数据!');
- }
- var action = $(this).attr('data-src') || $(this).parents('[data-location]').attr('data-location');
- var value = $(this).attr('data-value') || 0, field = $(this).attr('data-field') || 'status';
- $.form.modal(action,{field:field,value:value,id:id} , $(this).attr('data-title') || '编辑');
- });
复制上述代码添加到/static/admin/listen.js中即可。
使用方法:
比如我们有如下页面需要以弹出窗口的形式打开,同时需要将checkbox的值传递过去。
我们只需要在页面上点击按钮的地方,编写如下代码即可:
- <div class="nowrap pull-right" style="margin-top:10px">
- <button data-getmodal data-field='printn' data-src='{:url("$classuri/printn")}?program_id={$program_id}' data-title="打印预览" class='layui-btn layui-btn-small' data-confirm="确定要打印选定内容吗?"><i
- class='fa fa-print'></i> 打印预览
- </button>
- </div>
对列表页面的checkbox添加属性“.list-check-box”示例代码如下:
- <th class='list-table-check-td'>
- <input data-none-auto="" data-check-target='.list-check-box' type='checkbox'/>
- </th>
单列数据前的checkbox代码:
- <td class='list-table-check-td'>
- <input class="list-check-box" value='{$vo.id}' type='checkbox'/>
- </td>
如果是采用ThinkAdmin或Tp-admin作为开发框架的话,只需要把其他列表页复制过来改下按钮代码就能直接使用。非常方便。
除此之外,我们还可以对弹出框自定义提示信息,属性为“data-confirm='提示内容' ”。
Tp-admin的完善方向不在于新特性,而在于稳定和极速。能够帮助使用该框架的人快速构建项目。欢迎大家star和使用。