The only ways to modify the current URL is with hashtags (#
) and window.history.replaceState
, both of which don't actually reload the page. These methods do dispatch change-events that you could listen-for and, using ajax, re-query a backend script to get results, however - this may be a bit more than what you actually need.
What you'll want to do, most likely, is have your form (with the select-menu) re-submit the form back to the current page. Something like:
<form action="" method="GET">
<select name="perpage" onchange="this.form.submit()">
<option value="10">10</option>
<option value="25">25</option>
<option value="50">50</option>
</select>
</form>