【问题标题】:Modify URL based on search filter根据搜索过滤器修改 URL
【发布时间】:2017-01-25 17:21:30
【问题描述】:

我有一个产品搜索页面。我在其中有搜索字段。搜索产品列表后显示在结果部分。现在我想使用左侧面板“优化搜索”来修改搜索,在本节中有一些参数可以缩小搜索范围。 让用户搜索 Shirt 然后我的 URL 是 http://localhost:8080/query?q=shirt 现在,如果用户使用颜色 RED 优化结果。我需要更新网址 http://localhost:8080/query?q=shirt&color=red 怎么做 ? 我正在使用 Spring MVC 和 JSP ,Javascript 也是一种选择。

【问题讨论】:

  • 我认为您需要提供更多信息。或者至少是您拥有的一些代码。这个左侧面板是如何设置的?它是否充满了单选按钮、复选框、输入字段?您提供的内容很难很好地回答您的问题。
  • 在 javascript 中,如果您已经知道 url 参数(q、颜色等),您可以构建 url 然后重定向 (window.location = 'http://localhost:8080/query?q=shirt&color=red';)。希望对你有帮助
  • @JonBlack 左侧面板有单选按钮,其中包含 5 种颜色。如果我选择其中之一,则 URL 应附加颜色属性并刷新结果列表。

标签: javascript spring jsp spring-mvc web


【解决方案1】:

如果你不反对使用 jQuery,那么你可以实现它。但它并不能完全解释实际的搜索查询,因为我不完全了解您的实现。

var currentColor = '';

$("input[type=radio]").on('click', function () {
    var previousColor = currentColor;
    currentColor = $(this).val();

    //if the parameter has already been set then replace, otherwise create a new one
    if (previousColor) {
        location.href = location.href.replace("color=" + previousColor, "color=" + currentColor);
    } else {
        location.href = location.href + '&color=' + currentColor;
    }
});

【讨论】:

    猜你喜欢
    • 2011-10-12
    • 1970-01-01
    • 1970-01-01
    • 2012-12-16
    • 2021-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-09
    相关资源
    最近更新 更多