使用JS或jQuery更改或更新浏览器地址栏中查询字符串的可见部分
Change or update the visible part of query string in the browser address bar using JS or jQuery?
我想知道有没有任何解决方案可以通过JavaScript或Jquery点击一些复选框,用一些新值更改或更新URL的查询字符串部分(在浏览器的地址栏中可见)。我想在没有任何jQuery插件的情况下做到这一点。
当用户单击组中的任何复选框时,将根据用户选择的复选框值从数据库中提取数据。同时,URL的查询字符串也将更改为新的更新值。请注意,在整个过程中永远不会重新加载页面。当复选框被选中时,我们可以运行AJAX。我们如何才能做到这一点?我们将非常感谢您的演示。
是的,这是一件非常常见的事情。window.replaceState是您要查找的函数。或者,如果您希望允许用户将back
转到复选框的前一状态,也可以使用pushState
,但这是更多的工作,并不总是期望的。
再说一遍,您实际上需要一些东西来将一个URL更改为另一个URL。将URL操作为字符串会适得其反,因此您可以使用URI.js.
使用窗口。history类似:
window.history.pushState('page2', 'Title', '/new-uri');
对于您的案例,您将有两个嵌套函数:包含AJAX调用的Event Listener+此AJAX调用的回调:
$('[input]').change(function(){
if(this.checked){
//AJAX
$.get("URL",{},function(data){
//AJAX - Callback
window.history.pushState('page2', data.title, data.url);
});
}
});
相关文章:
- 如何有效地将游戏数据存储在URL查询字符串中
- 从查询字符串参数推断出正确的数据类型
- AngularJS:获取链接中没有哈希的查询字符串值
- AngularJS,如何更改查询字符串
- Datatables查询url字符串:需要regex来修复url解析
- 如何将activeadmin查询字符串传递给batch_action
- 如何从查询字符串中的输入字段发回文本
- Django在使用AJAX时没有接收到新的查询字符串
- 使用查询字符串方法清除浏览器缓存
- 用于刷新的Javascript更改查询字符串
- 我想将查询字符串变量添加到JSON名称/值对中
- 将查询字符串值从页面传递 asp.net 到 iframe
- jqueryajax生成查询字符串,如果未定义则不通过
- 如何将查询字符串传递到HTML框架
- iron路由器将参数添加到字符串中,并添加一个查询
- 使用字符串查询此选择器
- 替换URL'中的字符串查询;s与Javascript(有条件)
- 基于匹配或正则表达式的查询字符串查询Mongo
- 简单json字符串查询
- 向Django传递一个布尔字符串查询