Так получаю GET params после того как все флажки сняты с checkbox
$(".checkbox_campaigns_id") так добавляю параметры к определенным ссылкам.
$(".checkbox_campaigns_id").attr("href", function(i, origValue){
console.log(origValue);
return origValue;
});
Ответ
/ru/statistics/ads?id=11&act_id=act_627387174454648&adset_id=23843999445570740&campaigns_id=23843999454240740,23843999445580740&campaigns_id=23843999445580740
Подскажите как можно удалить &adset_id=23843999445570740&campaigns_id=23843999454240740,23843999445580740&campaigns_id=23843999445580740
что бы получилось /ru/statistics/ads?id=11&act_id=act_627387174454648
Если не хочется заниматься веселой пляски с регулярками, и порядок чем-то (чем?) гарантирован то можно брутфорсить:
const str ='/ru/statistics/ads?id=11&act_id=act_627387174454648&adset_id=23843999445570740&campaigns_id=23843999454240740,23843999445580740&campaigns_id=23843999445580740';
const splitter = (str) =>{
const [first, second] = str.split('&');
return [first,second].join('&')
} // ru/statistics/ads?id=11&act_id=act_627387174454648
Если одинаковый порядок параметров не гарантирован, то лучше парсить всю строку:
var str = '/ru/statistics/ads?id=11&act_id=act_627387174454648&adset_id=23843999445570740&campaigns_id=23843999454240740,23843999445580740&campaigns_id=23843999445580740';
var base = str.split('?')[0];
var getParams = str.split('?')[1];
var filteredParams = getParams.split('&').filter(key => /^(id)|(act_id)=/.test(key)).join('&');
var filteredUrl = base + '?' + filteredParams;
console.log(filteredUrl);
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости