JQuery 根据 HTML 下拉列表选择查找并替换 URL 中的查询字符串
JQuery Find And Replace Query String in URL Based on HTML Dropdown Selection
我想使用 jquery 根据页面上下拉选项中选择的内容查找和替换该值来更改查询字符串中的特定值。例如:
假设我们在当前页面上有以下查询字符串:?field1=value1&field2=value2&archived=yes
下拉选项为:
- 未存档
- 存档
如果有人选择"非存档",jquery 函数应该对当前查询字符串进行查找和替换,并将 archived=yes 设置为 archived=no,然后刷新页面。
这是我现在拥有的一些代码,但它不进行查找和替换,它只是获取我从下拉列表中选择的值,然后根据下拉 html 中设置的选项值更改页面。
<script type="text/javascript" src="/js/jQuery.min.js"></script>
<script>
jQuery(document).ready(function(){
jQuery("#dropdown").change(function(e){
window.location.href = jQuery("#dropdown").val();
});});
</script>
<select class="dropdown" id="dropdown">
<option value="#" selected="selected">Choose Type</option>
<option value="(set archived=no)">Non-Archived</option>
<option value="(set archived=yes)">Archived</option>
</select>
任何帮助将不胜感激!
试试这个
jQuery
jQuery(document).ready(function () {
jQuery("#dropdown").change(function (e) {
if (window.location.href.indexOf("archived") > -1) {
window.location.href.replace(/(archived=yes|archived=no)/g, "archived=" + jQuery("#dropdown ").val());
} else {
window.location.href += "archived=" + jQuery("#dropdown ").val();
}
});
});
.HTML
<select class="dropdown" id="dropdown">
<option value="#" selected="selected">Choose Type</option>
<option value="no">Non-Archived</option>
<option value="yes">Archived</option>
</select>
这
似乎有效:
JSFiddle Demo
var href="?field1=value1&field2=value2&archived=yes";
var testUrl = $(location).attr('href');
alert('Current URL = ' + testUrl);
jQuery("#dropdown").change(function(e){
if($("#dropdown").val() == "(set archived=no)") {
href = href.replace("archived=yes", "archived=no");
} else if($("#dropdown").val() == "(set archived=yes)") {
href = href.replace("archived=no", "archived=yes");
}
alert(href);
window.location.href = href;
});
相关文章:
- 如何有效地将游戏数据存储在URL查询字符串中
- Javascript/jQuery URL查询参数解析
- Express编辑URL查询为“”;favicon.ico”;
- 将 URL 查询字符串传递给 Javascript 函数
- 删除在单击其他选项卡时生成的url查询元素的一部分
- 将URL查询字符串值从JavaScript编码为ASP.NET MVC
- 如何基于下拉选择构建 URL 查询字符串
- 使用 URL 查询字符串动态显示 Facebook Open Graph
- 有没有办法确定角度.js是否存在 url 查询参数
- 在 Javascript 中将对象文本编码为 URL 查询字符串
- 删除 URL 查询字符串中的加号 (+)
- 在url查询参数中传递多个url
- javascript中获取api中的Url查询字符串
- 将javascript对象转换为url查询
- 如何从URL查询字符串中获取参数值
- 使用JS/RRails和下拉表单更新URL查询字符串
- 基于URL查询的后台切换
- 表单提交将取消URL查询字符串中的一个参数
- 在Chrome中使用XMLHttpRequest获取URL查询
- 在Flow Router上使用URL查询参数进行搜索