Necesito configurar el botón de radio en el valor que paso a través de url.
El código para crear botones de opción es el siguiente:
function filterCategory(ads){ let categories = Array.from(new Set(ads.map(ann=>ann.category))); let rowCategoryRadio = document.querySelector('#row-category-radio'); categories.forEach((cat,i) => { let input = document.createElement('div'); input.classList.add('form-check'); input.innerHTML = ` <input class="form-check-input filter-category" type="radio" name="category-filter" id="flexRadioDefault${i}" data-filter="${cat}"> <label class="form-check-label" for="flexRadioDefault${i}"> ${cat} </label> ` rowCategoryRadio.appendChild(input); }) } <div class="row" id="row-category-radio"> <div class="form-check"> <input class="form-check-input filter-category" type="radio" name="category-filter" id="flexRadioDefault1" data-filter="all" checked> <label class="form-check-label" for="flexRadioDefault1"> All categories </label> </div> </div>Para configurar el botón de opción al valor que paso, escribí el siguiente código.
let url_string = window.location.href; let url2 = new URL(url_string); let name_url = url2.searchParams.get("name"); if(url_string.includes('?')){ let radios = document.querySelector('.filter-category'); let selected = radios.querySelector('data-filter'); selected = name_url; selected.checked = true; console.log(selected);El archivo console.log me da el valor correcto pero no está marcado en el botón de opción.
¿Puede alguien amablemente ayudarme?