0

当前网址

   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 ..

这就是我想从当前 URL 实现的目标。

<a href="http://www.example.com/search/?accommodation=1&venue=&seating=2&min=&max=&feature_list=8|9|10">Link</a>

我将其用作过滤系统...

这是一个动态网址,所以 7|8|9 一直在变化...

4

3 回答 3

2
var url = window.location.href.replace('7|8|9', '8|9|10'),
    $link = $('<a href="'+ url +'">Link</a>');
于 2012-04-16T09:03:32.643 回答
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');
于 2012-04-16T09:25:38.547 回答
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;
于 2012-04-16T09:24:55.133 回答