首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PrimeFaces dataTable: ajax捕获筛选事件,但不捕获排序事件

PrimeFaces是一个开源的JavaServer Faces(JSF)组件库,提供了丰富的UI组件和功能,用于快速构建Web应用程序。PrimeFaces dataTable是其中的一个组件,用于展示和处理数据表格。

在PrimeFaces dataTable中,可以通过ajax来捕获筛选事件,但不捕获排序事件。具体来说,当用户在数据表格中进行筛选操作时,可以通过设置相应的属性和事件来实现ajax捕获筛选事件。

首先,需要在dataTable组件中设置filterEvent属性为"keyup",以便在用户输入时触发筛选事件。例如:

代码语言:txt
复制
<p:dataTable filterEvent="keyup" ...>

然后,可以使用filterBy属性来指定要筛选的列。例如,如果要筛选名为"username"的列,可以这样设置:

代码语言:txt
复制
<p:column filterBy="#{user.username}" ...>

接下来,可以使用filterValue属性来获取用户输入的筛选值,并将其传递给后端进行处理。例如,可以在筛选事件触发时调用一个后端方法来处理筛选逻辑:

代码语言:txt
复制
<p:ajax event="filter" listener="#{bean.handleFilter}" />

在后端的bean中,可以定义一个方法来处理筛选事件,并获取筛选值。例如:

代码语言:txt
复制
public void handleFilter(FilterEvent event) {
    String filterValue = (String) event.getFilterValue();
    // 处理筛选逻辑
}

至于排序事件,PrimeFaces dataTable默认会自动处理排序,无需额外设置。当用户点击表头的排序按钮时,dataTable会自动发送ajax请求,并在后端进行排序处理。

总结起来,PrimeFaces dataTable可以通过设置filterEvent属性为"keyup"来捕获筛选事件,并使用filterBy属性和filterValue属性来指定筛选列和获取筛选值。对于排序事件,无需额外设置,dataTable会自动处理。

关于PrimeFaces dataTable的更多信息和使用示例,可以参考腾讯云的PrimeFaces组件库介绍页面:PrimeFaces组件库介绍

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

datatables应用程序接口API

API实例可以通过以下方式创建: $( selector ).DataTable(); $( selector ).dataTable().api(); new $.fn.dataTable.Api(...(不能指定新的数据源) ajax.url().load()API 设置新的url数据源重新加载数据 ajax.url()API 设置新的url数据源 draw()API 重绘表格 $()API 在整个表格里执行...(完成)一个 jQuery 选择器操作 ajax.json()API 获得最终的json数据 ajax.params()API 获取最后一次Ajax请求提交的参数 ajaxAPI ajax方法的命名空间...清除表格里所有数据 data()API 获得表格中所有数据 destroy()API 销毁当前上下文中的datatables实例 i18n()API 国际化标签查找 off()API 移除表格的监听事件...on()API 监听表格事件 one()API 第一次监听表格事件,然后移除监听 order()API 获得/设置表格排序 order.listener()API 在一个元素上为一个给定列添加一个排序监听

4.4K30
  • javascript基础重点

    的函数在查找变量时从自身函数定义开始,从内向外查找,如果内部函数定义了与外部函数重名的变量,则内部函数的变量将屏蔽外部函数的变量 10.javascript会扫描整个函数体的语句,把所有声明的变量提升到函数顶部,但不会提升变量的赋值...Array的sort()方法默认把所有的元素先转换为String 再排序 [10, 20, 1, 2].sort(); // [1, 10, 2, 20] '10'排在'2'的前面,因为'1'比字符'2...School","skills":["JavaScript","Java","Python","Lisp"]}' JSON.stringify(xiaoming,null,' '); 第二个参数用于控制如何筛选对象的键值...,原因是在绑定事件的代码处,无法捕获事件处理函数的错误 26.underscore函数库  node.js 27....28.process.nextTick(function(){}); //传入的函数不是立即执行,要等到下一次事件循环 Node.js进程本身的事件就由process对象来处理。

    91320

    JS常见问题总结

    事件、IE 与火狐的事件机制有什么区别? IE 的是冒泡流,而火狐同时支持冒泡流和捕获流 37. 如何阻止冒泡?...事件捕获阶段:事件的传播是从最不特定的事件目标到最特定的事件目标。。 确定目标阶段:通过捕获确定具体触发事件的元素 事件冒泡阶段:事件的传播是从最特定的事件目标到最不特定的事件目标。...事件传播的顺序对应浏览器的两种事件流模型:捕获事件流和冒泡型事件流。...在绑定事件 addEventListener(事件类型,处理函数,是否捕获)中有 3 个参数,最后一个参数默认是 false:表示冒泡,true:表示捕获。 41. 事件委托是什么?...// 注册事件 ajax.onreadystatechange = function () { // 在事件中 获取数据 并修改界面显示 if (ajax.readyState

    3.2K40

    htcap:一款实用的递归型Web漏洞扫描工具

    今天给大家介绍的是一款名叫 htcap 的开源 Web 漏洞扫描工具,它通过拦截 AJAX 调用和页面 DOM 结构的变化并采用递归的形式来爬取单页面应用(SPA)。...htcap所采用的爬虫算法能够采用递归的方式爬取基于AJAX的页面,htcap可以捕获AJAX调用,然后映射出DOM结构的变化,并对新增的对象进行递归扫描。...当htcap加载了一个测试页面之后,htcap会尝试通过触发所有的事件和填充输入值来触发AJAX调用请求,当htcap检测到了AJAX调用之后,htcap会等待请求和相关调用完成。...在被动模式下,htcap不会与任何页面进行交互,这意味着爬虫不会触发任何页面事件,它只会收集页面现有的链接。在这个模式下,htcap就跟普通的Web爬虫一样,只会收集页面标签中的链接。...在主动模式下,htcap会触发所有发现的事件,相当于模拟用户与页面进行交互,但不填写任何表单数据。

    1.1K70

    JS 面试总结 理论篇

    (res) } }) console.log(300) 这样有个弊端,可读性差 event loop 事件轮询 同步代码,直接执行 异步函数先放到异步队列中,待同步函数执行完毕,轮询执行异步队列的函数...在XHR运行中,当其属性readyState改变时readystatechange事件就会被触发, 只有在XHR从远端服务器接收响应结束时回调函数才会触发执行。...关于$ajax 中的 async 参数 async默认的设置值为true,这种情况为异步方式,就是说当ajax发送请求后,在等待server端返回的这个过程中,前台会继续 执行ajax块后面的脚本,直到...是什么实现的 捕获异常的方法通过使用 try...catch try { var a = 1; var b = a + c; } catch (e) { // 捕获处理...在MVVM框架中如果你一如既往的想使用window.onerror来捕获异常,那么很可能会竹篮打水一场空,或许根本捕获不到,因为你的异常信息被框架自身的异常机制捕获了。

    1.4K30

    js事件委托

    概念 事件委托也叫事件代理,事件委托就是利用事件冒泡,只指定一个事件处理程序,就可以管理某一类型的所有事件。...举例:ul下的li元素有绑定事件,我们通过ul绑定委托之后,委托的源码部分会在其执行函数内针对事件源进行筛选判定是否符合筛选条件(是否是li),然后针对的获取属性或者内容,进行相关的操作。...,依次是捕获阶段、目标阶段、冒泡阶段。...event : (必需)事件名,支持所有DOM事件。 function:(必需)指定要事件触发时执行的函数。 useCapture:(可选)指定事件是否在捕获或冒泡阶段执行。true,捕获。...这里导致默认事件事件向上冒泡的。 捕获vs冒泡 捕获阶段:父元素先触发,子元素后触发; 冒泡阶段:子元素先触发,父元素后触发。

    3.3K31

    Debezium的增量快照

    「挂起」和「恢复」,并且恢复执行后可定位到挂起前的位置,无需再从头开始; 在执行快照时,不需要暂停事件流的捕获,也就是说快照可以和事件捕获同时执行,互不影响,保证了事件流的低延迟性; 无锁,保证了在快照的同时数据库依然能够写入...事务日志中还包含了 schema 变化相关的事件,需要妥善处理,但不是本文讨论的重点,这里暂且忽略不提。...下图为 Chunk 的示例,该表中的主键为 c1,且查询时按 c1 进行排序,Chunk size 为 3。...步骤 1 暂停当前的正常事件日志捕获并生成两个 UUID: lw、hw。...,这个操作被夹在两个 watermark 的更新操作之间,后续的处理流程就可以以这两个位置为依据标识出哪些事件是在这次 Chunk 查询过程中发生的; 步骤 5 开始,恢复正常的事件日志捕获,并循环遍历每个按顺序捕获到的事件

    1.5K30

    如何优雅处理前端的异常?

    总结一下,大概如下: JS 语法错误、代码异常 AJAX 请求异常 静态资源加载异常 Promise 异常 Iframe 异常 跨域 Script error 崩溃和卡顿 下面我会针对每种具体情况来说明如何处理这些异常...这些 error 事件不会向上冒泡到 window ,不过(至少在 Firefox 中)能被单一的 window.addEventListener 捕获。...控制台输出: 由于网络请求异常不会事件冒泡,因此必须在捕获阶段将其捕捉到才行,但是这种方式虽然可以捕捉到网络请求的异常,但是无法判断 HTTP 的状态是 404 还是其他比如 500 等等,所以还需要配合服务端日志才进行排查分析才可以...利用 window 对象的 load 和 beforeunload 事件实现了网页崩溃的监控。...通过 Ajax 发送数据: 因为 Ajax 请求本身也有可能会发生异常,而且有可能会引发跨域问题,一般情况下更推荐使用动态创建 img 标签的形式进行上报。

    1.8K50

    【自然框架】QuickPager分页控件的总体介绍和在线演示

    URL分页方式里支持直接提取记录集,目前支持DataTable和WebList2(一个固定的实体类)。  Postback分页方式,支持直接通过URL参数(?...QuickPager分页控件也设置了两个事件,在控件绑定前和绑定后触发,以方便我们实现一些特殊需求。如果只是一般的分页的话,那么就不用去管这两个事件了。...Ajax是刚加入的一个功能,目前还不太完善。这个是针对postback的分页方式,也就是针对服务器控件来做的。基于jQuery.ajax实现,没有用asp.net 的ajax控件。...自动适应:   Max只能是单字段排序,颠倒Top支持多字段排序,但是如果单字段排序的话,就有点浪费了。如果一开始是单字段排序,后来变成了多字段排序,怎么办?...URL分页里,可以直接获取DataTable,这样我们可以直接在页面里遍历DataTable了。当然如果你不喜欢可以不用的。我是比较喜欢这种方式的。 另外还可以直接获取一个实体类——WebList2。

    1.1K80

    Debezium的增量快照

    「挂起」和「恢复」,并且恢复执行后可定位到挂起前的位置,无需再从头开始; 在执行快照时,不需要暂停事件流的捕获,也就是说快照可以和事件捕获同时执行,互不影响,保证了事件流的低延迟性; 无锁,保证了在快照的同时数据库依然能够写入...事务日志中还包含了 schema 变化相关的事件,需要妥善处理,但不是本文讨论的重点,这里暂且忽略不提。...下图为 Chunk 的示例,该表中的主键为 c1,且查询时按 c1 进行排序,Chunk size 为 3。...步骤 1 暂停当前的正常事件日志捕获并生成两个 UUID: lw、hw。...,这个操作被夹在两个 watermark 的更新操作之间,后续的处理流程就可以以这两个位置为依据标识出哪些事件是在这次 Chunk 查询过程中发生的; 步骤 5 开始,恢复正常的事件日志捕获,并循环遍历每个按顺序捕获到的事件

    99850

    如何用正确的姿势去高效的解决前端异常,用实践造就答案

    总结一下,大概如下: JS 语法错误、代码异常 AJAX 请求异常 静态资源加载异常 Promise 异常 Iframe 异常 跨域 Script error 崩溃和卡顿 下面我会针对每种具体情况来说明如何处理这些异常...这些 error 事件不会向上冒泡到 window ,不过(至少在 Firefox 中)能被单一的 window.addEventListener 捕获。 ? 控制台输出: ?...由于网络请求异常不会事件冒泡,因此必须在捕获阶段将其捕捉到才行,但是这种方式虽然可以捕捉到网络请求的异常,但是无法判断 HTTP 的状态是 404 还是其他比如 500 等等,所以还需要配合服务端日志才进行排查分析才可以...利用 window 对象的 load 和 beforeunload 事件实现了网页崩溃的监控。 ?...通过 Ajax 发送数据: 因为 Ajax 请求本身也有可能会发生异常,而且有可能会引发跨域问题,一般情况下更推荐使用动态创建 img 标签的形式进行上报。 2.动态创建 img 标签的形式: ?

    1.1K60

    Jquery DataTable 的学习之隐藏和显示列(三)

    2017-01-17 15:13:37 在大数据量的前提下,会出现列很多的情况,浏览器会呈现出滚动条,但是用户需要看到的并不一定是所有的信息,那么就需要对表格的数据进行筛选,在前面的文章中介绍到了搜索和排序...,这都是对数据的筛选功能,但是列数过多会导致用户查看数据非常麻烦。...$(document).ready(function() { $('#example').dataTable( { "aoColumnDefs": [ { "bSearchable": false...$(document).ready(function() { var myTable = $('#example').dataTable(); } ); 然后在进行隐藏或者是显示操作 myTable.column...(0).visible(false)//将第一列的数据隐藏 myTable.column(1).visible(true)//让第二列的数据显示 这样在初始化之后,再通过触发事件就可以实现动态控制某列隐藏或者是显示了

    2.9K10
    领券