Как получить индекс нажатой кнопки

#javascript #html

Вопрос:

Доброе утро.

Как я могу получить индекс нажатой кнопки класса. Когда я нажимаю на первый «Editar», мне нужен индекс 0. Когда я нажимаю на второй «Editar», мне нужен индекс 1 и так далее. Я пытался использовать:

 document.getElementsByClassName('editar')
 

Но я не могу найти длину нажатой кнопки.

Это HTML-код. Здесь это таблица всего с одной строкой, но на странице будет много строк:

         <div class="alinhadora">
          <tr>
            <td scope="row" class='zeroCol'>1</td>
            <td class='primeiraCol'>
              <p class='prioridadeCampo'></p>
              <textarea name="name" rows="2" cols="20" placeholder="Digite aqui a prioridade."></textarea>
            </td>
            <td class='segundaCol'>
              <p class='descri-tabela'></p>
              <label for="setorSelect"></label>
              <select name="setor" id="setorSelect" class='selectTotal'>
                <option value=""></option>
                <option value="Tecnologia da Informação">Tecnologia da Informação</option>
                <option value="Recursos Humanos">Recursos Humanos</option>
                <option value="Engenharia">Engenharia</option>
              </select>
            </td>
            <td class='terceiraCol'>
              <p class='areaCampo'></p>
              <label for="areaSelect"></label>
              <select name="area" id="areaSelect" class='selectTotal'>
                <option value=""></option>
                <option value="Redes">Redes</option>
                <option value="Telefonia">Telefonia</option>
                <option value="Software">Software</option>
              </select>
            </td>
            <td class='quartaCol'>
              <p class='tipoCampo'></p>
              <label for="tipoSelect"></label>
              <select name="tipo" id="tipoSelect" class='selectTotal'>
                <option value=""></option>
                <option value="Liberação de Acesso">Liberação de Acesso</option>
                <option value="Dúvidas">Dúvidas</option>
                <option value="Desenvolvimento">Desenvolvimento</option>
              </select>
            </td>
            <td class='quintaCol'>
              <p>Aberto</p>
            </td>
            <td class='sextaCol'>
              <p class='urgenciaCampo'></p>
              <label for="urgenciaSelect"></label>
              <select name="urgencia" id="urgenciaSelect" class='selectTotal'>
                <option value=""></option>
                <option value="Normal">Normal</option>
                <option value="Urgente">Urgente</option>
                <option value="Crítico">Crítico</option>
              </select>
            </td>
            <td class='setimaCol'>
              <p class='designadoCampo'></p>
              <label for="designadoSelect"></label>
              <select name="designado" id="designadoSelect" class='selectTotal'>
                <option value=""></option>
                <option value="Ailton de Souza Junior">Ailton de Souza Junior</option>
                <option value="Carlos Henrique">Carlos Henrique</option>
                <option value="Crítico">Everson</option>
              </select>
            </td>
            <td class='oitavaCol'>
              <p>Descrição Teste</p>
            </td>
            <td class='nonaCol'>
              <button type="button" class="btn btn-success acoes-botao salvar">Salvar</button>
              <button type="button" class="btn btn-success acoes-botao">Chat</button>
              <button type="button" class="btn btn-success acoes-botao editar">Editar</button>
              <button type="button" class="btn btn-danger acoes-botao">Aprovação</button>
            </td>
          </tr>
        </div>
 

Комментарии:

1. Пожалуйста, покажите, что вы пробовали, а что не сработало.

2. я попробовал document.getElementsByClassName(‘editar’).target.attributes, но я не могу найти, где находится индекс с кнопки. Я поместил его в функцию onclick.

3. Я не думаю document.getElementsByClassName('editar') , что у него есть target атрибут, и я не думаю, что есть собственный атрибут индекса, который отслеживал бы индекс элемента в определенном классе. Я бы прошелся по всем элементам в классе и сравнил каждый с выбранным элементом.

Ответ №1:

Вы можете передать параметр для подобной функции из HTML.

 <button onclick="clicked(1)">Button1<button/>
<script>
function clicked(param){
console.log(param)}
</script>