2016-02-09 42 views
-1

尋找「計算器,」我發現這工作:更新在JavaScript與逗號分隔的查詢字符串

function updateQueryStringParameter(uri, key, value) { 
    var re = new RegExp("([?&])" + key + "=[^&#]*", "i"); 
    if (re.test(uri)) { 
     return uri.replace(re, '$1' + key + "=" + value); 
    } else { 
     var matchData = uri.match(/^([^#]*)(#.*)?$/); 
     var separator = /\?/.test(uri) ? "&" : "?";  
     return matchData[0] + separator + key + "=" + value; 
    } 
} 
function removeQueryStringParameter(uri, key, value){ 
    var re = new RegExp("([?&])" + key + "=.*?(&|$)", "i"); 
    var separator = uri.indexOf('?') !== -1 ? "&" : "?"; 
    if (uri.match(re)) { 
     return uri.replace(re, ''); 
    } 
} 

它工作正常,但我需要唯一的區別類似,該值是用逗號連接起來或任何分離器。例子:

www.google.com?key=1,2,3,4而不是關鍵= 1 &鍵= 2 ...

提前感謝!

+1

那麼你的輸入是什麼,代碼應該輸出什麼輸出? – gurvinder372

+0

我不明白 – Filippo

+0

你可以在你的問題中分享樣本輸入和期望的輸出嗎? – gurvinder372

回答

0

這是我的腳本代碼:

tjq('.servizio').click(function() { 
     var servizio = tjq(this).data('id'); 
     var href = tjq(location).attr('href'); 
     if(tjq(this).parent().hasClass('active')){ 
      var url = removeQueryStringParameter(href, 'serv', encodeURIComponent(servizio)); 
      location.href = url; 
     }else{ 
      var url = updateQueryStringParameter(href, 'serv', encodeURIComponent(servizio)); 
      location.href = href.url; 
     } 
    }); 

和HTML代碼:

<a href="#" class="servizio" data-id="'.$filtroS['servizio'].'">'.$filtroS['servizio'].'<small>('.$filtroS['quanti'].')</small></a></li>'; 

我創建的搜索過濾器。

+0

請幫助...! – Filippo

相關問題