FastAdmin表格顶部增加toolbar按钮

效果入下图,在表格顶部增加一个自定义按钮,点击确认后请求服务器接口

表格对应的index.html中

    <div class="panel-body"><div id="myTabContent" class="tab-content"><div class="tab-pane fade active in" id="one"><div class="widget-body no-padding"><div id="toolbar" class="toolbar"><a href="javascript:;" class="btn btn-primary btn-refresh" title="{:__('Refresh')}" ><i class="fa fa-refresh"></i> </a>
<!--                        <a href="javascript:;" class="btn btn-success btn-add {:$auth->check('chat/group/add')?'':'hide'}" title="{:__('Add')}" ><i class="fa fa-plus"></i> {:__('Add')}</a>-->
<!--                        <a href="javascript:;" class="btn btn-success btn-edit btn-disabled disabled {:$auth->check('chat/group/edit')?'':'hide'}" title="{:__('Edit')}" ><i class="fa fa-pencil"></i> {:__('Edit')}</a>-->
<!--                        <a href="javascript:;" class="btn btn-success btn-del btn-disabled disabled {:$auth->check('chat/group/del')?'':'hide'}" title="{:__('Delete')}" ><i class="fa fa-refresh"></i> {:__('Delete')}</a>-->
<!--                        新增刷新数据按钮--><a href="javascript:;" class="btn btn-success btn-synchronization {:$auth->check('chat/group/synchronization')?'':'hide'}" title="{:__('Synchronization')}" ><i class="fa fa-cloud-download"></i> {:__('Synchronization')}</a></div><table id="table" class="table table-striped table-bordered table-hover table-nowrap"data-operate-edit="{:$auth->check('chat/group/edit')}"data-operate-del="{:$auth->check('chat/group/del')}"width="100%"></table></div></div></div></div>

表格对应的js

            // 初始化表格参数配置Table.api.init({extend: {index_url: 'chat/group/index' + location.search,// add_url: 'chat/group/add',// edit_url: 'chat/group/edit',// del_url: 'chat/group/del',// 增加按钮对应的后台的urlsynchronization_url: 'chat/group/synchronization',multi_url: 'chat/group/multi',import_url: 'chat/group/import',table: 'chat_group',}});edit: function () {Controller.api.bindevent();},// 新增同步数据synchronization: function () {Controller.api.bindevent();},api: {bindevent: function () {Form.api.bindevent($("form[role=form]"));}}

在require-table.js文件中

        config: {checkboxtd: 'tbody>tr>td.bs-checkbox',toolbar: '.toolbar',refreshbtn: '.btn-refresh',addbtn: '.btn-add',editbtn: '.btn-edit',delbtn: '.btn-del',//增加自定义按钮synchronizationbtn: '.btn-synchronization',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',},button: { //现有代码为了确定增加代码的位置edit: {name: 'edit',icon: 'fa fa-pencil',title: __('Edit'),extend: 'data-toggle="tooltip" data-container="body"',classname: 'btn btn-xs btn-success btn-editone'},del: {name: 'del',icon: 'fa fa-trash',title: __('Del'),extend: 'data-toggle="tooltip" data-container="body"',classname: 'btn btn-xs btn-danger btn-delone'},//增加自定义按钮synchronization: {name: 'synchronization',icon: 'fa fa-trash',title: __('Synchronization'),extend: 'data-toggle="tooltip" data-container="body"',classname: 'btn btn-xs btn-danger btn-delone'},// 批量删除按钮事件 现有代码为了确定增加代码的位置toolbar.on('click', Table.config.delbtn, function () {var that = this;var ids = Table.api.selectedids(table);Layer.confirm(__('Are you sure you want to delete the %s selected item?', ids.length),{icon: 3, title: __('Warning'), offset: 0, shadeClose: true, btn: [__('OK'), __('Cancel')]},function (index) {Table.api.multi("del", ids, table, that);Layer.close(index);});});// 企业微信同步数据事件toolbar.on('click', Table.config.synchronizationbtn, function () {var that = this;var ids = Table.api.selectedids(table);Layer.confirm(__('确认从企业微信重新获取信息?'),{icon: 3, title: __('Warning'), offset: 0, shadeClose: true, btn: [__('OK'), __('Cancel')]},function (index) {Table.api.synchronization("synchronization", ids, table, that);;Layer.close(index);});});// 批量操作请求 现有代码为了确定增加代码的位置multi: function (action, ids, table, element) {var options = table.bootstrapTable('getOptions');var data = element ? $(element).data() : {};ids = ($.isArray(ids) ? ids.join(",") : ids);var url = typeof data.url !== "undefined" ? data.url : (action == "del" ? options.extend.del_url : options.extend.multi_url);var params = typeof data.params !== "undefined" ? (typeof data.params == 'object' ? $.param(data.params) : data.params) : '';options = {url: url, data: {action: action, ids: ids, params: params}};Fast.api.ajax(options, function (data, ret) {table.trigger("uncheckbox");var success = $(element).data("success") || $.noop;if (typeof success === 'function') {if (false === success.call(element, data, ret)) {return false;}}table.bootstrapTable('refresh');}, function (data, ret) {var error = $(element).data("error") || $.noop;if (typeof error === 'function') {if (false === error.call(element, data, ret)) {return false;}}});},// 增加同步微信数据请求synchronization: function (action, ids, table, element) {var options = table.bootstrapTable('getOptions');var url = options.extend.synchronization_url;options = {url: url, data: {}};Fast.api.ajax(options, function (data, ret) {table.trigger("uncheckbox");var success = $(element).data("success") || $.noop;if (typeof success === 'function') {if (false === success.call(element, data, ret)) {return false;}}table.bootstrapTable('refresh');}, function (data, ret) {var error = $(element).data("error") || $.noop;if (typeof error === 'function') {if (false === error.call(element, data, ret)) {return false;}}});},

如此之后前端代码已经实现完毕,点击就出现如图效果,并请求了后台接口。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/145802.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【开源】基于JAVA的服装店库存管理系统

项目编号&#xff1a; S 052 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S052&#xff0c;文末获取源码。} 项目编号&#xff1a;S052&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 数据中心模块2.2 角色管理模块2.3 服…

linux下usleep函数对CPU占用率的影响

linux下usleep函数对CPU占用率的影响 2023-11-16 文章目录 linux下usleep函数对CPU占用率的影响1. 测试代码2. CPU占用率不使用usleep延时#define SLEEP_US 1 (1微秒)#define SLEEP_US 10 (10微秒)#define SLEEP_US 100 (100微秒)#define SLEEP_US 1000 (1000微秒1毫秒)#defin…

Go 语言变量类型和声明详解

在Go中&#xff0c;有不同的变量类型&#xff0c;例如&#xff1a; int 存储整数&#xff08;整数&#xff09;&#xff0c;例如123或-123float32 存储浮点数字&#xff0c;带小数&#xff0c;例如19.99或-19.99string - 存储文本&#xff0c;例如“ Hello World”。字符串值用…

微服务学习 | Ribbon负载均衡、Nacos注册中心、微服务技术对比

Ribbon负载均衡 负载均衡流程 负载均衡策略 通过定义IRule实现可以修改负载均衡规则&#xff0c;有两种方式&#xff1a; 1. 代码方式:在服务消费者order-service中的OrderApplication类中&#xff0c;定义一个新的IRule: 2.配置文件方式: 在order-service的application.yml…

【C++学习手札】模拟实现vector

&#x1f3ac;慕斯主页&#xff1a;修仙—别有洞天 ♈️今日夜电波&#xff1a;くちなしの言葉—みゆな 0:37━━━━━━️&#x1f49f;──────── 5:28 &#x1f504; ◀️ ⏸ ▶️ ☰…

FPGA学习笔记(十三)负数运算

系列文章目录 文章目录 系列文章目录Verilog负数负数运算原理 Verilog负数 reg寄存器是最常用的寄存器类型&#xff0c;这种寄存器中只能存放无符号数。如果给reg中存入一个负数&#xff0c;通常会被视为正数。 reg [8:0] a; //9位b声明是有符号数要加signed&#xff0c…

Vue23的计算属性(computed)

Vue2&3的计算属性&#xff08;computed&#xff09; Vue2的计算属性 原理&#xff1a;data中的属性通过计算得到新的属性&#xff0c;称为计算属性&#xff08;computed&#xff09;。computed 具有 getter 和 setter 属性 getter 属性在使用时分别有两次调用&#xff1a…

cloud网关

Gateway--服务网关 网关简介 大家都都知道在微服务架构中&#xff0c;一个系统会被拆分为很多个微服务。那么作为客户端要如何去调用这么多的微服务呢&#xff1f;如果没有网关的存在&#xff0c;我们只能在客户端记录每个微服务的地址&#xff0c;然后分别去调用。 所谓的AP…

Verilog基础:三段式状态机与输出寄存

相关阅读 Verilog基础https://blog.csdn.net/weixin_45791458/category_12263729.html 对于Verilog HDL而言&#xff0c;有限状态机(FSM)是一种重要而强大的模块&#xff0c;常见的有限状态机书写方式可以分为一段式&#xff0c;二段式和三段式&#xff0c;笔者强烈建议使用三…

进程信号(linux)

什么是信号 信号是一种用于进程之间通信或操作的一种手段&#xff0c;通常一个进程会在任意时刻接收到系统发送的信号&#xff0c;因此信号也可以看做是一种进程事件异步通知的手段。 一个进程可以对信号有三种操作&#xff1a; 默认操作&#xff1a;默认进行信号对应的操作…

【Python】【应用】Python应用之一行命令搭建HTTP、FTP服务器

&#x1f41a;作者简介&#xff1a;花神庙码农&#xff08;专注于Linux、WLAN、TCP/IP、Python等技术方向&#xff09;&#x1f433;博客主页&#xff1a;花神庙码农 &#xff0c;地址&#xff1a;https://blog.csdn.net/qxhgd&#x1f310;系列专栏&#xff1a;Python应用&…

mapbox支持的坐标系

mapbox 中只支持 web墨卡托坐标系&#xff0c;不支持经纬度坐标系。 栅格数据 基于经纬度坐标系的栅格数据没有办法渲染。矢量数据 矢量数据代码中会自动转换成墨卡托投影坐标系再渲染。 输出坐标时候还是经纬度。

产品经理进阶:外包原因及类型(一)

目录 前言 究竟为什么需要外包呢? 外包类型 CSDN学院 作者简介 前言 欢迎大家继续来到硬件产品经理进阶指南专题。 今天就来谈谈外包这个话题。 正常来讲,多数企业的开局,面临的无非就两种情况: 一种是你有一个想法或者是创意。

python爬虫 之 JavaScript 简单基础

文章目录 在网页使用JavaScript 代码的方式常用的JavaScript 事件常用的JavaScript 对象 在网页使用JavaScript 代码的方式 在网页中使用 JavaScript 代码的方式主要有三种&#xff1a; 内联方式&#xff08;Inline&#xff09;&#xff1a; 在 HTML 文件中直接嵌入 JavaScrip…

简单的 UDP 网络程序

文章目录&#xff1a; 简单的UDP网络程序服务端创建套接字服务端绑定启动服务器udp客户端本地测试INADDR_ANY 地址转换函数关于 inet_ntoa 简单的UDP网络程序 服务端创建套接字 我们将服务端封装为一个类&#xff0c;当定义一个服务器对象之后&#xff0c;需要立即进行初始化…

【uniapp/uview1.x】u-upload 在 v-for 中的使用时, before-upload 如何传参

引入&#xff1a; 是这样一种情况&#xff0c;在接口获取数据之后&#xff0c;是一个数组列表&#xff0c;循环展示后&#xff0c;需要在每条数据中都要有图片上传&#xff0c;互不干扰。 分析&#xff1a; uview 官网中有说明&#xff0c;before-upload 是不加括号的&#xff…

Linux网络配置,常用命令及远程工具

1.Linux最常用的命令以及目录结构 常用命令&#xff1a; ls&#xff1a;列出当前目录的文件和子目录。 cd&#xff1a;切换当前工作目录。 pwd&#xff1a;显示当前工作目录的路径。 mkdir&#xff1a;创建一个新目录。 rm&#xff1a;删除文件或目录。 cp&#xff1a;复制文…

【Hello Go】Go语言函数

Go语言函数 定义格式自定义函数无参数无返回值有参数无返回值不定参数列表有返回值有多个返回值 函数类型匿名函数和闭包延迟调用deferdefer和匿名函数结合使用 获取命令行参数 定义格式 函数是构成代码执行的逻辑结构 在Go语言中 函数的基本组成为 func关键字函数名参数列表…

《QT从基础到进阶·三十三》QT插件开发QtPlugin

插件和dll区别&#xff1a; 插件 插件主要面向接口编程&#xff0c;无需访问.lib文件&#xff0c;热插拔、利于团队开发。即使在程序运行时.dll不存在&#xff0c;也可以正常启动&#xff0c;只是相应插件功能无法正常使用而已&#xff1b; 调用插件中的方法只要dll即可&#x…

Ajax 之XMLHttpRequest讲解

一直以来都听别人说Ajax,今天终于接触到了。。。。。。。。。。 一.什么是Ajax? 答: AJAX即“Asynchronous Javascript And XML”&#xff08;异步JavaScript和XML&#xff09;&#xff0c;是指一种创建交互式网页应用的网页开发技术。 AJAX 异步 JavaScript和XML&#x…