Как выбрать конкретную кнопку из нескольких кнопок внутри каждого помощника в руле?

{{#each posts}}    
   <input type="hidden" value="{{this.id}}" name="storeInput">
   <input type="button" value="Save" name="store">
{{/each}}

Как выбрать конкретную кнопку с JQyery?

2 ответа

Решение

Здесь этот слушатель событий будет фильтровать по кнопкам и взглянуть на предыдущего родного брата.

document.addEventListener('click', (e) => {
  if(e.target.matches('[type="button"]')) {
    console.log(e.target.previousElementSibling.value);
  }
});
<input type="hidden" value="1" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="2" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="3" name="storeInput">
<input type="button" value="Save" name="store">
<input type="hidden" value="4" name="storeInput">
<input type="button" value="Save" name="store">

Если у вас есть ссылка на идентификатор записи на клиенте, вы можете создать идентификатор или класс на основе this.id

<input type="hidden" id="post-{{this.id}}" value="{{this.id}}" name="storeInput">

тогда в JS

const buttonEl = $('#post-' + post.id);

Вам не нужно 'post-', но хорошо, что пространство имен.

Я уверен, что есть лучший способ сделать это, кстати

Другие вопросы по тегам