2010-11-24 1 views

Antwort

1

Hier ist ein anderer Ansatz. Der Code ist ein bisschen mehr, als die Suchzeichenfolge analysiert wird, eine Zuordnung der Parameter zu erstellen und dann wieder zusammen bauen (dies sollte dann mit beliebigen Parametern arbeitet):

var searchTerms = document.location.search.substr(1).split('&'); 
var parameters = {}; 
for(var i = 0; i < searchTerms.length; i++) { 
    var parts = searchTerms[i].split('=', 2); 
    parameters[parts[0]] = parts[1]; 
} 

parameters['opr'] = 'sales-' + document.getElementById('selectboxID').value; 

searchTerms = []; 
for(var key in parameters) { 
    if(parameters.hasOwnProperty(key)) { 
     searchTerms.push(key + '=' + parameters[key]); 
    } 
} 

document.location.search = searchTerms.join('&'); 

Referenz: document.location

Working Demo (ich benutze jQuery nur für die Demonstration, der eigentliche Code ist die oben gezeigte)

+0

danke, es hat funktioniert und nette Demo auch, danke nochmal –

0
Url = document.location.href.split("?"); 
dropdownval = document.getElementByID('dropdown/selectbox id tag').value; 
document.location = Url[0]+'?page=index&opr=sales-'+dropdownval+'&page=1'; 

, dass der Code ist können Sie diese verwenden, zu erreichen.

+0

danke, aber ich brauche bessere Lösung als Werte von "page" und "pageno" könnte sich ändern –

0

Alternativ Sie tun könnten, eine ersetzen:

var val = 'sales-' + document.getElementById('selectBox').value; 
document.location.href = document.location.href.replace(/([?&]opr=)([^&]+)/, '$1' + val); 

Ersetzt den Parameter opr durch den Wert (val) von #selectBox.

Ich glaube jedoch, dass @Felix Kling solution ist viel generischer. Einfach posten, um auch einer einfachen Lösung einen Hinweis zu geben.

+0

danke für die einfachere Lösung, und ja du bist richtig "@Felix Kling "Lösung ist viel allgemeiner –

Verwandte Themen