#javascript #jquery
#javascript #jquery
Вопрос:
Я не силен в jquery, может кто-нибудь преобразовать это в javascript / angular?
$('#' $(e.target).attr('for')).prop('checked',true);
Это html
<section class="numberOfPpl" [@fadeIn]="state">
<span class="dropdown-el" (click)="dropPerson($event)" [ngClass]="{expanded: personChange }" >
<input type="radio" name="sortType" value="numberOfPeople" checked="checked"><label class="labelFirst2" for="numberOfPeople">Number Of People</label>
<input type="radio" name="sortType" value="1-4" ><label for="1-4">1-4</label>
<input type="radio" name="sortType" value="4-8" ><label for="4-8">4-8</label>
<input type="radio" name="sortType" value="More"><label for="More">More</label>
</span>
</section>
Я хочу просто изменить значение / html-вывод после нажатия, например, 1-4
Комментарии:
1. Это не сервис для написания кода, каким бы тривиальным он ни был…
2. Пожалуйста, поделитесь html
3.
prop()
это просто удобный метод для доступа к.property
элементу. Если у вас есть элемент, вы можете получить доступ к его.checked
Ответ №1:
Вы можете использовать Document#querySelector
для получения на основе CSS-селектора. Чтобы получить значение атрибута, используйте Element#getAttribute
метод. И, наконец, вы можете обновить свойство, просто используя обозначение точкой или скобкой.
document.querySelector('#' e.target.getAttribute('for')).checked = true;
К вашему СВЕДЕНИЮ: Где e
ссылается на объект event.
Ответ №2:
Чистый Javascript, без jQuery
document.querySelector('#' e.target '[for]').checked = true;
Комментарии:
1. Недопустимый селектор.
e.target
является элементом. Также[for]
ищет элементы с этим атрибутом. Он никоим образом не выбирает элемент, на который ссылается e.targetfor