>

<select> 에서 선택한 값에서 'change'이벤트로 실행되는 jQuery 함수가 있습니다.  꼬리표. 하지만 지금은 <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

(Obs .:이 함수는 내 <table> 에서 '페이지 매김'을 적용합니다.  )

이전선택 :

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

질문 : <select> 때문에 동일한 '변경'이벤트를 사용할 수 없습니다  더 이상 존재하지 않습니다. 지금부터 jQuery 함수를 어떻게 사용할 수 있습니까? onRowSelect (예 : 아래) 아약스 이벤트로 가능합니까?

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

  • 답변 # 1

    내 솔루션 :

    기능

    function paginateTable(maxRows){
    ...
    
    

    기능 호출

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

  • 답변 # 2

    가장 쉬운 해결책은

    <올>

    CSS로 #maxRows el 숨기기 (표시 : 없음)

    아약스 전체 설정 값 ($(# maxRows) .val (15))

    트리거 '변경'이벤트 ($(# maxRows) .trigger ( 'change'))

    대신 리스너 기능을 이동하여 하나를 분리하고 이름으로 호출 할 수도 있습니다.

관련 자료

  • 이전 if statement - 배열 내부의 값이 특정 값보다 큰지 확인하는 방법
  • 다음 javascript - NodeJS의 요청 모듈을 사용하여 중복 쿼리 문자열을 보내는 방법