如何通过onRowSelect ajax事件调用jQuery?

时间:2018-02-28 19:51:16

标签: javascript jquery ajax jsf primefaces

我有一个jQuery函数,由&#39; change&#39;执行。来自<select>标记中选取的值的事件。 但现在我不需要<select>,因为我会在我的jQuery函数中强制使用该值。

我的页面使用JSF和PrimeFaces。)

我的jQuery函数:

var table = '#myTable'
$('#maxRows').on('change', function(){ //Event who need to be changed
    $('.pagination').html('')
    var trnum = 0
    var maxRows = parseInt($(this).val()) //This will be changed for -> var maxRows = 10
    var totalRows = $(table+' tbody tr').length
    $(table+' tr:gt(0)').each(function(){

...more code

(视角:此功能适用&#39;分页&#39;在我的<table>中)

我的选择:

<select id="maxRows">
    <option value="5">5</option>    
    <option value="10">10</option>  
    <option value="15">15</option>
</select>

问题是:我不能使用同样的改变&#39;因为<select>将不再存在,我怎么能从现在开始使用jQuery函数?可以通过onRowSelect(示例贝娄)ajax事件吗?

<p:ajax event="rowSelect listener="????" />

2 个答案:

答案 0 :(得分:1)

我的解决方案:

<强>功能

function paginateTable(maxRows){
...

函数调用

<p:ajax event="rowSelect" oncomplete="paginateTable(10)"/>

答案 1 :(得分:0)

最简单的解决方案可以是

  1. 使用css隐藏#maxRows el(显示:无)
  2. 关于ajax完整设定值($(#maxRows).val(15))
  3. 触发&#39;更改&#39; event($(#maxRows).trigger(&#39; change&#39;))
  4. 或者,您可以将侦听器功能移到另一个并按名称调用它。