Javascript 在不重新加载页面的情况下修改URL中的特定参数值
我有一个网址Javascript 在不重新加载页面的情况下修改URL中的特定参数值,javascript,php,jquery,ajax,url,Javascript,Php,Jquery,Ajax,Url,我有一个网址 http://localhost/revamp/search.php?city=chennai&V&locality=mylapore&sort_val=sort_price 在这个URL中,我只需要在选择距离选项时更新URL中的sort\u val=sort\u distance,而无需重新加载页面 <select name="sort_val" class="sort_select"> <option value="sort_distance">Sor
http://localhost/revamp/search.php?city=chennai&V&locality=mylapore&sort_val=sort_price
在这个URL中,我只需要在选择距离选项时更新URL中的sort\u val=sort\u distance
,而无需重新加载页面
<select name="sort_val" class="sort_select">
<option value="sort_distance">Sort by Distance</option>
<option value="sort_price">Sort by Price</option>
<option value="sort_ratings">Sort by Ratings</option>
</select>
按距离排序
按价格分类
按评级排序
您好,您可以使用下面的解决方案,我希望它能对您有所帮助
$(document).ready(function(){
var queries = {};
$.each(document.location.search.substr(1).split('&'), function(c,q){
var i = q.split('=');
queries[i[0].toString()] = unescape(i[1].toString()); // change escaped characters in actual format
});
$(".sort_select").change(function(){
queries[$(this).attr('name')]=$(this).val();
history.pushState({}, '', "?"+$.param(queries));
});
})
谢谢:)你尝试过谷歌搜索吗?1-选择选项时触发Javascript事件;2-使用javascript更改url参数;然后把这两个放在一起,它正在工作。但是,URL中的
+
被%2B
代码替换,并且在解码时,它将%2B
带到+
之间需要有一个空间words@VyshnaviSamudrala,请参考更多详细信息,如果您仍然卡住。。请给我留言。。我在这里。:)别忘了在选票上打上正确的标记;)谢谢@VyshnaviSamudrala,如果您需要我的帮助,请尝试使用JSFIDLE让我知道;)但是,它起作用了,我正在用PHP文件中的一个空格替换+。。无论如何谢谢你!我在js fiddle中为你分享了一些东西,将来会对你有所帮助。。无论如何,for+signture将转换%2B,但您可以使用php端的urlencode()和urldecode()函数。