If you save the request in the SearchSession, you can avoid the use of JavaScript. Instead, when a user clicks on a link for a page, you set the necessary properties (including the saveRequest property) on the saved request through dsp:property tags, and then resubmit the request:

<dsp:a href="queryExampleFastSave.jsp#Paging">
  <dsp:valueof param="count"/>
  <dsp:property bean="QueryFormHandler.goToPage" paramvalue="count"
    name="fh_gtp" priority="29"/>
  <dsp:property bean="QueryFormHandler.searchRequest.saveRequest"
    value="true" name="fh_sr" priority="30"/>
  <dsp:property
    bean="QueryFormHandler.searchRequest.requestChainToken"
    value="${formHandler.searchResponse.requestChainToken}"
    name="fh_rct" priority="30"/>
</dsp:a>

The examples of normal paging and fast paging in the Types of Paging section use this approach.