0

現在のURL

   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>

私はこれをフィルタリングシステムとして使用しています...

これは動的URLであるため、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 に答える