変更時に入力に入力された値に移動するページネーション入力を作成しました。
ページ範囲を検出し、その範囲内のページ間のナビゲーションを許可します。例/image-gallery-album-1.aspx?page=3
<form type="get" onchange="return false">
<div class="pagerUI">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<!-- previous page -->
<xsl:if test="$page > 1">
<td class="pager-prev"><a class="previous" href="{concat('?page=', $page - 1, $qs)}" title="Previous page">‹</a></td>
</xsl:if>
<td>Page</td>
<td><input type="number" name="page" id="page" min="1" >
<xsl:choose>
<xsl:when test="$page=1">
<xsl:attribute name="value">1</xsl:attribute>
</xsl:when>
<xsl:otherwise>
<xsl:attribute name="value"> <xsl:value-of select="$currentPageNumber" /> </xsl:attribute>
</xsl:otherwise>
</xsl:choose>
<xsl:attribute name="max"> <xsl:value-of select="$numberOfPages"/> </xsl:attribute>
</input></td>
<td>of <xsl:value-of select="$numberOfPages"/></td>
<!-- next page -->
<xsl:if test="$page * $resultsPerPage < count($matchedNodes)">
<td class="pager-next"><a class="next" href="{concat('?page=', $page + 1, $qs)}" title="Next page">›</a></td>
</xsl:if>
</tr>
</table>
</div>
</form>
ただし、これを XSLTSearch コードに追加すると、URL が検索文字列を失うため機能しません。
/image-search.aspx?search=football&page=3に移動する代わりに
/image-search.aspx?page=3に移動します。検索結果を表示するための検索基準がないため、そのページには結果が表示されません。
フォームを変更して、URL を変更して検索値を含める「アクション」を含めようとしましたが、動的であるため入力値を含めることができません。
たとえば、次のフォームで入力に値を入力すると、URL は次のように更新されます。
onchange と action および method post 属性を使用してフォームを検索します。
<form type="get" onchange="return false">
<xsl:attribute name="method"> <xsl:text>post</xsl:text> </xsl:attribute>
<xsl:attribute name="action"> <xsl:text>?search=</xsl:text> <xsl:value-of select="$search"/><xsl:text>&</xsl:text>page= (input value)</xsl:attribute>
送信された値を検出して URL の検索文字列に解析する JavaScript または何らかの方法はありますか?
任意の支援をいただければ幸いです。乾杯、JV