Ho uno script che aggiunge il valore da un elemento cliccato. Tuttavia, mi piacerebbe sostituire il valore con quello nuovo quando si fa clic.Sostituisce dinamicamente il parametro url
Esempio:
<ul class="acfilter">
<li><a href="reset">reset</a></li>
<li><a href="One">One</a></li>
<li><a href="Two">Two</a></li>
</ul>
Script
$(document).ready(function() {
$('ul.acfilter li a').on('click', function(e) {
e.preventDefault();
if ($(this).attr('href') != "reset") {
if (location.href.indexOf('?') === -1) {
location.href = location.href + "?fss=" + $(this).attr('href');
} else {
location.href = location.href + "+" + $(this).attr('href');
}
} else {
location.href = location.origin + location.pathname;
}
});
});
primo parametro fornisce onclick ?fss=one
e il secondo clic si ottiene? fss=one+two
. Il link di reset lo cancella.
Tuttavia, desidero sostituire il valore "uno" con il valore "due" sul clic. Il valore è dinamico, quindi non posso fare if/Else url.replace con il valore conosciuto.
Come posso fare?
Edit:
dimenticato di dire che ci possono essere altri parametri nell'URL. Esempio:
Primo scatto dà
?fss=one
e quando si fa un'azione che dà l'altro parametro ho citato dà questo:
?param=list&fss=one
che è corretto utilizzando lo script da Brijesh utente chowdary lavu. Param = list è un parametro che deve essere sempre il primo, ed è scritto per farlo e cambia da lista a largelist, questo funziona anche con quello script.
problema è quando clicco sul mio classe specifica per la seconda volta - invece di andare da
?param=list&fss=one
a
?param=list&fss=two
sostituisce tutto per
?fss=one
provare questi anwers http: // StackOverflow.it/questions/5999118/add-or-update-query-string-parameter – gurvinder372