在之前学习的章节中,已经详解过关于使用QueryCommand方式实现dorado的查询开发。在使用了FormDataset+QueryCommand的查询示例中,QueryCommand控件自动将FormDataset中的Field与AutoSqlDataset中的MatchRules匹配实现查询功能。本节主要讲解在不使用QueryCommand控件的情况下,利用Dataset自身的flushData方法实现局部刷新的AJAX机制的查询功能。

准备工作

在sample项目的src下新建ViewModel,命名flushQuery。在新建的ViewModel中新建AutoSqlDataset,命名datasetEmployee。之后再新建DataTable绑定datasetEmployee,然后,设置datasetEmployee中每个Field的label属性值。(参考章节)。

图13-13 新建flushQuery相关的JSP页面,命名flush_query.jsp,通过【Browse】查看效果。

图13-14

设置查询匹配条件

在flushQuery中设置datasetEmployee的查询匹配条件MatchRules。(参考章节)

图13-15

新增条件数据集对象

新增Dataset数据集对象,用于接受用户输入的查询条件。步骤:【Datasets】—>【Insert】—>【FormDataset】。

图13-16 添加AutoForm控件,绑定datasetConditions。

图13-17

添加查询按钮

添加Button按钮控件,命名buttonflushQuery。步骤:【Controls】—>【Insert】—>【Button】,设置按钮的Value属性值为"查询"。

图13-18 新增formConditions、buttonflushQuery控件标签至flush_query.jsp中。

图13-19 保存全部,刷新页面查看效果。

图13-20

添加按钮单击事件

在buttonflushQuery的onClick单击事件中编写JavaScript查询事件代码。

图13-21 刷新页面,在EMPLOYEE_ID文本框中输入"ANLIN",点击【查询】查看效果。

图13-22 测试其他几个查询会发现都没有问题,与章节中的不同之处在于,本处查询并没有出现如图12-24所示的服务端处理状态框。

图13-23 删除刚才输入的"ANLIN",在SALARYMin输入"3000",SALARYMax输入"5000",按照之前的设置,应该查询出的结果是">=3000"并且"<=5000"之间的记录集。点击【查询】查看结果。

图13-24

开发步骤

在使用Dataset的flushData方法事先查询的过程,实际上是清空当前Dataset数据集,重新在服务器端获取数据并返回的过程。从Dataset的原理章节可以知道flushData会导致服务器端重新构造Dataset对象并加载数据,最终实现查询功能。

开发步骤

第一步:准备工作。 第二步:设置MatchRules查询条件。

第三步: 新增条件数据集对象FormDataset。 第四步:添加AutoForm控件并绑定FormDataset。

第五步:新增Button控件用于查询操作。 第六步:在Button的onClick事件中编写查询脚本。

详细步骤图

dorado 刷新_5.dorado查询开发:使用flushData方法 (T1)相关推荐

  1. vue路由,解决同一路由页面多次触发不刷新页面【vue开发】

    vue路由,解决同一路由页面多次触发不刷新页面[vue开发] vue路由的机制是这样的: 不同的路由vue会刷新并跳转到相应路由,但如果是下一个点击触发的还是当前路由则当前路由页面不会被刷新 要解决的 ...

  2. 【实习之T100开发】T100 Q查询开发流程

    Q查询 要求 1. azzi900建立程序代号cxmq666 2. azzi910建立作业代号cxmq666 3. 设计器 - 规格 - 下载规格 - 同时签出规格和程序 4. 设计器 - 常用工具 ...

  3. 微信公众号成绩查询开发-Leo老师

    微信公众号现在可分为两种-订阅号和服务号,两者又可在做区分一是未认证,二是微信认证号;服务号支持功能多于订阅号,认证号的功能支持多于未认证账号. 在工作学习中,我们经常会遇到微信公众号成绩查询开发 这 ...

  4. 用友nc65 uap开发刷新按钮二次开发

    用友nc65 uap开发刷新按钮二次开发 1.问题现象:卡片刷新,直接返回列表,且定位成第一条,且执行的是全部刷新 2.问题分析: 65向导生成的按钮,刷新按钮使用的同一个 nc.ui.pubapp. ...

  5. mybatis由浅入深day01_5mybatis开发dao的方法(5.1SqlSession使用范围_5.2原始dao开发方法)...

    5 mybatis开发dao的方法 5.1 SqlSession使用范围 5.1.1 SqlSessionFactoryBuilder 通过SqlSessionFactoryBuilder创建会话工厂 ...

  6. Mybatis学习记录(二)----mybatis开发dao的方法

    1  SqlSession使用范围 1.1 SqlSessionFactoryBuilder 通过SqlSessionFactoryBuilder创建会话工厂SqlSessionFactory 将Sq ...

  7. php清空dns缓存文件,dns清空-windows刷新本地DNS缓存的几种方法

    windows刷新本地DNS缓存的几种方法 产生原因分析: 1.常有人问到域名解析了不是即时生效的嘛,怎么还是原来的呢?答案就是在本地DNS有解析缓存,电脑第一次访问后,在一定的时间内就将其缓存下来, ...

  8. mysql查询耗时_一种数据库高耗时查询的自动取消方法与流程

    本发明涉及数据库的查询方法,特别涉及一种数据库高耗时查询的自动取消方法. 背景技术: 有很多关系型数据库查询业务非常耗时,比如查询企业实时报表之类的,一次查询可能需要几分钟甚至更长.在很多时候,前端业 ...

  9. Google排名查询的8个方法

    Google排名查询的8个方法 在当今的数字时代,搜索引擎优化(SEO)已经成为了许多企业和个人网站的重要一环.而Google作为全球最大的搜索引擎,其排名对于网站的流量和曝光度有着至关重要的影响.因 ...

最新文章

  1. 微软一顿操作猛如虎,PowerShell排名直线上升
  2. python爬取知乎热搜_python爬取知乎评论
  3. 加拿大留学商科好还是计算机科学好,去加拿大读商科专业就是要选择这些才最好!...
  4. LeetCode OJ:Construct Binary Tree from Preorder and Inorder Traversal(从前序以及中序遍历结果中构造二叉树)...
  5. AspNetCoreApi 跨域处理(CORS )
  6. 老司机实战Windows Server Docker:5 Windows Server Dockerfile葵花宝典
  7. 2019 wannafly winter camp day5-8代码库
  8. 天池 在线编程 回合制游戏(前缀和)
  9. Wrapper+map实现页面显示
  10. 工业大数据分析综述:模型与算法
  11. java发送短信功能工具类及思路详解
  12. pyqt 控件焦点_PyQt5 控件学习(一个一个学习之QTextEdit)
  13. 什么是自然语言处理?NLP简介
  14. Axure 8授权码
  15. 前端理解base64
  16. 成本优化之使用P2P的方案的需要了解的本地SDK的背后的原理
  17. 51 8位 单片机 定点数 除法 c语言,单片机C语言快速精度除法方案
  18. RC522读卡、修改UID、复制门禁卡(arduino板子)
  19. CAA教程——CATIA二次开发环境搭建
  20. CAD图纸如何转换WMF图片格式?

热门文章

  1. linux创建进程fork函数和vfork函数
  2. 【CyberSecurityLearning 42】日志记录规则
  3. Python入门学习---第一天
  4. springboot学习笔记(二)
  5. STM32开发 -- 低功耗模式详解(3)
  6. SecureCRT 或者 超级终端 始终无法ping通主机
  7. 树状数组(单点+区间的所有操作)
  8. Android PC投屏简单尝试—最终章1
  9. 从知识图谱到事理图谱 | CNCC 2017
  10. Android“应用克隆”漏洞分析