使用标记在url上添加GET参数

时间:2013-12-05 08:38:57

标签: javascript php jquery html wordpress

我有一个看起来像这样的网址

mysite.com/index.php?page=home&gender=female&age=22

mysite.com/index.php?page=home&gender=female&occupation=programmer

如何使用orderby=value标记添加新parram order=asca,例如提交按钮的工作方式。

就像当我点击链接名称它会在链接上添加新的参数a我可以按它对数据进行排序

<a href="#">Name</a> | <a href="#">Age</a>

喜欢wordpresshandles如何

wordpress/wp-admin/users.php?orderby=login&order=desc

4 个答案:

答案 0 :(得分:3)

为什么不在模板渲染期间构建URL?不需要JS

例如

<a href="/index.php?occupation=programmer&orderby=name&order=desc">Name</a>

只需在渲染和反转时检查当前的订单值。

显然,如果你使用的是AJAX,那么它就不那么有用了。

答案 1 :(得分:2)

您可以使用:

document.URL + "orderby=desc"

唯一的问题是当你再次点击时,你会获得两次订单。因此,您应该检查url是否已包含orderby参数。

可以在此处找到设置或替换url参数的更复杂的函数:

Add / Change parameter of URL and redirect to the new URL

答案 2 :(得分:2)

使用它

var url = document.URL;
if(url.indexOf('orderby') == -1){
url = document.URL + "orderby=desc";
}

答案 3 :(得分:0)

您可以使用此处发布的功能https://stackoverflow.com/a/6021027/1021726。所有功劳归于业余

该函数或者在查询字符串上创建一个新值,或者更新现有值。

<a>标记上添加onclick事件,并调用函数

updateQueryStringParameter(window.url, "orderby", "myName");
updateQueryStringParameter(window.url, "order", "desc");