Как написать .prop на javascript или angular?

#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.target for