Change URL parameters

前端 未结 26 2654
孤独总比滥情好
孤独总比滥情好 2020-11-22 08:40

I have this URL:

site.fwx?position=1&archiveid=5000&columns=5&rows=20&sorting=ModifiedTimeAsc

what I need is to be able to

26条回答
  •  说谎
    说谎 (楼主)
    2020-11-22 08:59

    I know this is an old question. I have enhanced the function above to add or update query params. Still a pure JS solution only.

                          function addOrUpdateQueryParam(param, newval, search) {
    
                            var questionIndex = search.indexOf('?');
    
                            if (questionIndex < 0) {
                                search = search + '?';
                                search = search + param + '=' + newval;
                                return search;
                            }
    
                            var regex = new RegExp("([?;&])" + param + "[^&;]*[;&]?");
                            var query = search.replace(regex, "$1").replace(/&$/, '');
    
                            var indexOfEquals = query.indexOf('=');
    
                            return (indexOfEquals >= 0 ? query + '&' : query + '') + (newval ? param + '=' + newval : '');
                        }
    

提交回复
热议问题