DWZ (JUI)表格Table单击选中功能扩展

2024-05-14 19:32

本文主要是介绍DWZ (JUI)表格Table单击选中功能扩展,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

原本DWZ框架提供的单选功能是单击选中表单上某一记录,点击设置好a标签按钮,URL自动加上记录Id并执行URL,打开新窗口或者ajax提交,可实现对该条记录的更新(删除、修改)。这些功能已经很强大了,但是实际项目还会有更复杂的操作,而不单单是url的请求执行,所以本人就对单击选中功能做了扩展。
先介绍原有的功能,为理解接下来的新扩展提供理论基础。
原有功能html端表现:

//a标签按钮,{xxx_id}大括号里的名称是与表单的tr标签属性target的值是一致的
//表单的tr标签属性rel的值就是该行记录的ID值,也就是{xxx_id}所代表的值
<div class="panelBar"><ul class="toolBar"><li class="">//target="navTab"即打开新的页签,target="dialog"即弹出小窗口,title的值为窗口或页签的名//target="ajaxTodo"即ajax提交,title的值为确认执行的弹框提示内容<a class="edit" href="xxx/xxx?id={xxx_id}" target="navTab" title="xx"><span>修改</span></a></li></ul>
</div>
//可单选的表单
<table >
...
<tbody><tr target="xxx_id" rel="1" ><td >xxx</td>...</tr>           
</tbody>
</table >

原有功能javascript端表现:

//dwz.ui.js文件在大概265行到280行(这边有改动,所以是大概位置)
// navTab$("a[target=navTab]", $p).each(function(){$(this).click(function(event){var $this = $(this);var title = $this.attr("title") || $this.text();var tabid = $this.attr("rel") || "_blank";var fresh = eval($this.attr("fresh") || "true");var external = eval($this.attr("external") || "false");var url = unescape($this.attr("href")).replaceTmById($(event.target).parents(".unitBox:first"));DWZ.debug(url);if (!url.isFinishedTm()) {alertMsg.error($this.attr("warn") || DWZ.msg("alertSelectMsg"));return false;}navTab.openTab(tabid, url,{title:title, fresh:fresh, external:external});event.preventDefault();});});

以上是原有target=”navTab”打开新的页签的功能全部,本人就是以这个为参照,做出更灵活的扩展功能。
以下就是具体实现:
在dwz.ui.js里navTab实现方法之后加如下jq代码(即initUI(_box)方法里):

//新的单击选中功能,是自定义target="editOne",并在a标签里自定义属性editOne="youfunc()"实现的
// clickOne$("a[target=editOne]", $p).each(function(){$(this).click(function(event){var $this = $(this);var title = $this.attr("title") || $this.text();//获取editOne属性的值即自定义的js函数var url = unescape($this.attr("editOne")).replaceTmById($(event.target).parents(".unitBox:first"));DWZ.debug(url);if (!url.isFinishedTm()) {alertMsg.error($this.attr("warn") || DWZ.msg("alertSelectMsg"));return false;}//执行自定义的js函数eval(url);event.preventDefault();});});

html的扩展实现:

<a class="edit" editOne="youfunc({xxx_id})" target="editOne"><span>XXX</span></a>

这篇关于DWZ (JUI)表格Table单击选中功能扩展的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

GORM中Model和Table的区别及使用

《GORM中Model和Table的区别及使用》Model和Table是两种与数据库表交互的核心方法,但它们的用途和行为存在著差异,本文主要介绍了GORM中Model和Table的区别及使用,具有一... 目录1. Model 的作用与特点1.1 核心用途1.2 行为特点1.3 示例China编程代码2. Tab

利用Python开发Markdown表格结构转换为Excel工具

《利用Python开发Markdown表格结构转换为Excel工具》在数据管理和文档编写过程中,我们经常使用Markdown来记录表格数据,但它没有Excel使用方便,所以本文将使用Python编写一... 目录1.完整代码2. 项目概述3. 代码解析3.1 依赖库3.2 GUI 设计3.3 解析 Mark

Java常用注解扩展对比举例详解

《Java常用注解扩展对比举例详解》:本文主要介绍Java常用注解扩展对比的相关资料,提供了丰富的代码示例,并总结了最佳实践建议,帮助开发者更好地理解和应用这些注解,需要的朋友可以参考下... 目录一、@Controller 与 @RestController 对比二、使用 @Data 与 不使用 @Dat

使用PyTorch实现手写数字识别功能

《使用PyTorch实现手写数字识别功能》在人工智能的世界里,计算机视觉是最具魅力的领域之一,通过PyTorch这一强大的深度学习框架,我们将在经典的MNIST数据集上,见证一个神经网络从零开始学会识... 目录当计算机学会“看”数字搭建开发环境MNIST数据集解析1. 认识手写数字数据库2. 数据预处理的

Python实战之屏幕录制功能的实现

《Python实战之屏幕录制功能的实现》屏幕录制,即屏幕捕获,是指将计算机屏幕上的活动记录下来,生成视频文件,本文主要为大家介绍了如何使用Python实现这一功能,希望对大家有所帮助... 目录屏幕录制原理图像捕获音频捕获编码压缩输出保存完整的屏幕录制工具高级功能实时预览增加水印多平台支持屏幕录制原理屏幕

Python实现自动化表单填写功能

《Python实现自动化表单填写功能》在Python中,自动化表单填写可以通过多种库和工具实现,本文将详细介绍常用的自动化表单处理工具,并对它们进行横向比较,可根据需求选择合适的工具,感兴趣的小伙伴跟... 目录1. Selenium简介适用场景示例代码优点缺点2. Playwright简介适用场景示例代码

MySQL中闪回功能的方案讨论及实现

《MySQL中闪回功能的方案讨论及实现》Oracle有一个闪回(flashback)功能,能够用户恢复误操作的数据,这篇文章主要来和大家讨论一下MySQL中支持闪回功能的方案,有需要的可以了解下... 目录1、 闪回的目标2、 无米无炊一3、 无米无炊二4、 演示5、小结oracle有一个闪回(flashb

MySQL使用binlog2sql工具实现在线恢复数据功能

《MySQL使用binlog2sql工具实现在线恢复数据功能》binlog2sql是大众点评开源的一款用于解析MySQLbinlog的工具,根据不同选项,可以得到原始SQL、回滚SQL等,下面我们就来... 目录背景目标步骤准备工作恢复数据结果验证结论背景生产数据库执行 SQL 脚本,一般会经过正规的审批

Java利用poi实现word表格转excel

《Java利用poi实现word表格转excel》这篇文章主要为大家详细介绍了Java如何利用poi实现word表格转excel,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 一、每行对象类需要针对不同的表格进行对应的创建。package org.example.wordToEx

Vue 调用摄像头扫描条码功能实现代码

《Vue调用摄像头扫描条码功能实现代码》本文介绍了如何使用Vue.js和jsQR库来实现调用摄像头并扫描条码的功能,通过安装依赖、获取摄像头视频流、解析条码等步骤,实现了从开始扫描到停止扫描的完整流... 目录实现步骤:代码实现1. 安装依赖2. vue 页面代码功能说明注意事项以下是一个基于 Vue.js