我在 PHP 站点中有一个搜索结果页面,它使用分页返回结果列表。网址如下所示:
findProducts.php?action=searchAssets&orderNumber=xxxx&productName=zzz&skip=20
我有一个选择菜单,允许用户修改/过滤搜索结果,从而触发如下脚本:
$(document).ready(function() {
$('#productType').change(function() {
window.location.href = window.location.href + '&productType=' + $(this).val();
});
});
除了一件事之外,这一切运行良好 - 我需要将新过滤器搜索的“skip”参数重置为 0,因为先前搜索的分页值无效或不适用。有什么办法可以改变:
skip=20
至:
skip=0
作为此脚本的一部分?
最佳答案
您可以对 URL 进行 RegExp 替换:
window.location.href = window.location.href.replace(/((?:\?|&)skip)=\d+/, '$1=0') + '...';
(未经测试)
请注意,您应该对 ProductType 执行相同的操作,否则您将一次又一次地添加它。
更好的解决方案可能是拥有一个基本 URL,然后添加所有必要的参数,而不是进行搜索和替换...
关于javascript - 通过选择菜单更改 - 更新参数修改 HTTP GET 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45154756/