想象一下,你有一个包含类别的菜单。每个都包含指向父页面的链接,但带有查询字符串。例如:
<a href="?category=5">Category 5</a>
这显示了gridview中类别5的一些项目。现在我希望能够使用查询字符串对所述gridview进行排序。所以我最终应该得到的查询字符是:
?category=5&sortby=namedesc
但我不知道已经选择了什么类别。所以我必须使用现有的查询字符串并添加&amp; sortby = namedesc。 现在,如果我要从菜单中选择另一个类别,则查询字符串当然不应添加新的“&amp; category =”,而是相应地更改现有的类别。
我弄清楚如何做到这一点的唯一方法是将它们变成链接按钮,并在“onclick”中分析现有的查询字符串,并根据需要追加/更改值。然后做
Request.Redirect("page.aspx" + newQueryString);
这应该可行,但这似乎是一种非常低效的方式,因为每次点击需要2次回发。
我的问题是:有更智能/更好的方法来处理这个问题吗?