添加/修改URL参数

时间:2016-12-15 14:38:00

标签: javascript html flask python-3.5

我有一个包含多个图表的页面,我希望每个图表旁边都有一个下拉菜单,允许我按不同的参数进行过滤。我发现自己面临的问题是想出一个简单的方法

  

a)在不删除现有参数的情况下向当前URL添加参数

     

b)检查该参数是否已存在于URL中并进行修改。

我也可能在我的网址上有锚点。有没有一种简单的方法来实现这一点而无需自己解析整个URL?

这将是我用于过滤器的下拉菜单,其目的是在python中使用request来获取URL参数。

<select name ="date range" onchange="this.form.submit()">
   <option value="today">Today</option>
   <option value="current week">Current week</option>
   <option value="last week">Last week</option>
   <option value="current month">Current month</option>
   <option value="last month">Last month</option>
</select>

现在我一直只使用网址参数来完成这项任务,但现在我需要稍稍提升我的游戏并使其更漂亮

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。我创建了隐藏值并使用Jinja2访问当前的url参数并设置默认值以防它们尚未设置

<form method="GET">
            <select name ="date range" onchange="this.form.submit()" value="last week">
                <option value="today">Today</option>
                <option value="current week">Current week</option>
                <option value="last week">Last week</option>
                <option value="current month">Current month</option>
                <option value="last month">Last month</option>
            </select>
            <input type="hidden" name="days" value={{request.args.get('days', 30)}} />
            <input type="hidden" name="weeks" value={{request.args.get('weeks', 4)}} />
            <input type="hidden" name="months" value={{request.args.get('months', 4)}} />
            <input type="hidden" name="filter" value={{request.args.get('filter', 'version')}} />

        </form>