WabaCus实现列表操作列的多按钮执行操作(项目实战)

2024-08-31 15:18

本文主要是介绍WabaCus实现列表操作列的多按钮执行操作(项目实战),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

写这篇博文的初衷:

官方提供的操作列按钮操作只有一个,即使放上多个按钮也只执行同一方法,往往不能满足实际工作中的需求,例如:

<col column="{editablelist-edit}" label="操作列" width="100px"><![CDATA[<input type="button" class='cls-button' value="修改时间"/>]]><![CDATA[<input type="button" class='cls-button' value="发送面试通知"/>]]>
</col>

此时,可借助<a></a>来完成,再设置成按钮的style即可,实例如下:

<report id="report2" title="面试沟通中信息" parenttitle="沟通中request{c1}" rowselect="checkbox" type="editablelist"><!-- getReportColData()是page引入的js中的方法,选择时进行拦截处理 --><buttons><button name="button1" position="title" label="放弃沟通">getReportColData('interview','report2',{c01:true},{name:'SELECTEDROW',value:true},'GiveUpCommunication');</button></buttons><display><col column="c1" label="个数" displaytype="hidden" /><col column="c01" label="co1" displaytype="hidden" clickorderby="true" valuestyleproperty="style='mso-number-format:\@' width='10%'"><inputbox jsvalidate="isNotEmpty(${invalid.isnotempty})"/></col><col column="c02" label="姓名"></col><col column="c03" label="应聘职位"></col><col column="c12" label="邀约面试官"></col><col column="c13" label="确认面试官" clickorderby="true" width="15%"></col><col column="c14" label="确认面试时间" width="160px"></col><col column="c15" label="面试通知"></col><col column="{non-fromdb}" label="操作" property="look" width="170px"></col></display><sql><select><value><![CDATA[select (SELECT COUNT(*) c FROM A05 a WHERE c10='沟通中') c1,c01,c02,c03,c12,c13,c14,c15 from A05 where  {#condition#} and c10='沟通中']]></value><condition name="txtgonghao" label="姓名|职位"><value><![CDATA[(c02 like '%#data#%' or c03 like '%#data#%')]]></value><inputbox><typeprompt count="30"><promptcol label="c02" title="姓名" matchmode="anywhere"></promptcol><promptcol label="c03" title="应聘职位" matchmode="anywhere"></promptcol><datasource><option dataset="@{select c02,c03 from A05 where {#matchcondition#}}"></option></datasource></typeprompt></inputbox></condition><condition name="txtchosemsg" label="确认面试官"><value><![CDATA[(c13 =#data#)]]></value><inputbox type="selectbox"><option value="" label="确认面试官"></option><option value="待反馈" label="待反馈"></option><option value="已同意" label="已同意"></option><option value="已拒绝" label="已拒绝"></option></inputbox></condition></select></sql><format><imports><import>com.wabacus.util.*</import><import>com.java.util.*</import></imports><value>rrequest.getRequest().setAttribute("c1",c1);	<!-- 存放request,以便显示标题时能取到 --><![CDATA[look = c13.indexOf("拒绝")==-1&&c13!="已拒绝"?(c13!="已拒绝"&&c14.indexOf("同意")!=-1?"<a style='line-height:21px;padding: 0 10px;background:#00B38A;border-radius:3px;display:inline-block;font-size:12px;text-decoration:none;color:white;' href='javascript:void(0)' onclick=\"wx_winpage('http://localhost:8080/OA/ShowReport.wx?PAGEID=CancelPlan&id="+c01+"',{width:'35%',height:'35%',title:'取消面试安排'})\">取消安排</a>&nbsp;<a style='line-height:21px;padding: 0 10px;background:#00B38A;border-radius:3px;display:inline-block;font-size:12px;text-decoration:none;color:white;' href='javascript:void(0)' onclick=\"wx_winpage('http://localhost:8080/OA/ShowReport.wx?PAGEID=ReachConfirm&id="+c01+"',{width:'50%',height:'50%',title:'确认应聘者已到达'})\">确认到达</a>":"<a style='line-height:21px;padding: 0 10px;background:#00B38A;border-radius:3px;display:inline-block;font-size:12px;text-decoration:none;color:white;' href='javascript:void(0)' onclick=\"wx_winpage('http://localhost:8080/OA/ShowReport.wx?PAGEID=UpdteInvitationsTime&id="+c01+"',{width:'35%',height:'35%',title:'面试沟通中'})\">修改时间</a>&nbsp;<a style='line-height:21px;padding: 0 10px;background:#00B38A;border-radius:3px;display:inline-block;font-size:12px;text-decoration:none;color:white;' href='javascript:void(0)' onclick=\"wx_winpage('http://localhost:8080/OA/ShowReport.wx?PAGEID=SendEmail&id="+c01+"',{width:'50%',height:'50%',title:'面试沟通中'})\">发送面试通知</a>"):"<a style='width:145px;line-height:21px;padding: 0 10px;background:#00B38A;border-radius:3px;display:inline-block;font-size:12px;text-decoration:none;color:white;' href='javascript:void(0)' onclick=\"wx_winpage('http://localhost:8080/OA/ShowReport.wx?PAGEID=TwoInvitations&id="+c01+"',{width:'35%',height:'35%',title:'重新发起邀约'})\">重新发起邀约</a>";c02 = "<a style='color:#3F00FF' href='ShowReport.wx?PAGEID=ViewWerPDF&c01="+c01+"'>"+c02+"</a>";]]></value></format>
</report>

亮点:

1、发挥三目运算符的优势,完成了对按钮的设定

2、点击姓名可实现在线文件预览(下期会有一篇博文专门来讲述,尽请期待。。。)

效果图:

这篇关于WabaCus实现列表操作列的多按钮执行操作(项目实战)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1124265

相关文章

C++使用栈实现括号匹配的代码详解

《C++使用栈实现括号匹配的代码详解》在编程中,括号匹配是一个常见问题,尤其是在处理数学表达式、编译器解析等任务时,栈是一种非常适合处理此类问题的数据结构,能够精确地管理括号的匹配问题,本文将通过C+... 目录引言问题描述代码讲解代码解析栈的状态表示测试总结引言在编程中,括号匹配是一个常见问题,尤其是在

Python调用Orator ORM进行数据库操作

《Python调用OratorORM进行数据库操作》OratorORM是一个功能丰富且灵活的PythonORM库,旨在简化数据库操作,它支持多种数据库并提供了简洁且直观的API,下面我们就... 目录Orator ORM 主要特点安装使用示例总结Orator ORM 是一个功能丰富且灵活的 python O

Java实现检查多个时间段是否有重合

《Java实现检查多个时间段是否有重合》这篇文章主要为大家详细介绍了如何使用Java实现检查多个时间段是否有重合,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录流程概述步骤详解China编程步骤1:定义时间段类步骤2:添加时间段步骤3:检查时间段是否有重合步骤4:输出结果示例代码结语作

使用C++实现链表元素的反转

《使用C++实现链表元素的反转》反转链表是链表操作中一个经典的问题,也是面试中常见的考题,本文将从思路到实现一步步地讲解如何实现链表的反转,帮助初学者理解这一操作,我们将使用C++代码演示具体实现,同... 目录问题定义思路分析代码实现带头节点的链表代码讲解其他实现方式时间和空间复杂度分析总结问题定义给定

Java覆盖第三方jar包中的某一个类的实现方法

《Java覆盖第三方jar包中的某一个类的实现方法》在我们日常的开发中,经常需要使用第三方的jar包,有时候我们会发现第三方的jar包中的某一个类有问题,或者我们需要定制化修改其中的逻辑,那么应该如何... 目录一、需求描述二、示例描述三、操作步骤四、验证结果五、实现原理一、需求描述需求描述如下:需要在

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

JavaScript中的reduce方法执行过程、使用场景及进阶用法

《JavaScript中的reduce方法执行过程、使用场景及进阶用法》:本文主要介绍JavaScript中的reduce方法执行过程、使用场景及进阶用法的相关资料,reduce是JavaScri... 目录1. 什么是reduce2. reduce语法2.1 语法2.2 参数说明3. reduce执行过程

如何使用Java实现请求deepseek

《如何使用Java实现请求deepseek》这篇文章主要为大家详细介绍了如何使用Java实现请求deepseek功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1.deepseek的api创建2.Java实现请求deepseek2.1 pom文件2.2 json转化文件2.2

python使用fastapi实现多语言国际化的操作指南

《python使用fastapi实现多语言国际化的操作指南》本文介绍了使用Python和FastAPI实现多语言国际化的操作指南,包括多语言架构技术栈、翻译管理、前端本地化、语言切换机制以及常见陷阱和... 目录多语言国际化实现指南项目多语言架构技术栈目录结构翻译工作流1. 翻译数据存储2. 翻译生成脚本

如何通过Python实现一个消息队列

《如何通过Python实现一个消息队列》这篇文章主要为大家详细介绍了如何通过Python实现一个简单的消息队列,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录如何通过 python 实现消息队列如何把 http 请求放在队列中执行1. 使用 queue.Queue 和 reque