当前网址
http://www.example.com/search/?accommodation=1&venue=&seating=2&min=&max=&feature_list=7|8|9
在jquery中是否有一种方法我如何抓住上面这个的url ....并且feature_list参数将其值(7 | 8 | 9)更改为 8 | 9 | 10 ?
我不需要更改URL标头,只是我想将此输出链接到HREF ..
这是我想从当前网址实现的目标。
<a href="http://www.example.com/search/?accommodation=1&venue=&seating=2&min=&max=&feature_list=8|9|10">Link</a>
我使用它作为过滤系统......
这是一个动态网址,所以7 | 8 | 9一直在变化......
答案 0 :(得分:2)
var url = window.location.href.replace('7|8|9', '8|9|10'),
$link = $('<a href="'+ url +'">Link</a>');
答案 1 :(得分:1)
可能不是最好的解决方案,但是......
var urla = window.location.search.replace('?','').split('&');
$.each(urla, function(j,v)
{
v=v.split('=');
if(v[0]=='feature_list')
{
var ft=parseInt(v[1].replace(/.*\|/, ''));
var fts=[];
for(var i=ft-1; i<ft+2; i++)
fts.push(i);
urla[j]=v[0]+'='+(fts.join(','));
}
});
urla = '?'+urla.join('&');
$link = $('<a/>',{'href':urla}).text('Link');
答案 2 :(得分:0)
query = 'feature_list'
query = query.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
var expr = "[\\?&]"+query+"=([^&#]*)";
var regex = new RegExp( expr );
var results = regex.exec( window.location.href );
if( results !== null ) {
return results[1];
return decodeURIComponent(results[1].replace(/\+/g, " "));
} else {
return false;
}
我找到的这个函数将返回顶部给出的某个参数的值
然后使用elclanrs解决方案并做了
url = window.location.href.replace(ans, '8|9|10'),
window.location.href = url;