Получить идентификатор записи динамически заполняемой таблицы в JavaScript

#javascript #html-table

#javascript #html-таблица

Вопрос:

Я добавил записи в таблицу, которая содержит значения в двух текстовых полях и кнопку для каждой строки. Как я могу получить номер записи конкретной кнопки, нажатой пользователем?

введите описание изображения здесь

 <table id="myTable">
</table>  
             
<script>
    
        var table=document.getElementById("myTable");
        var i=0;
        for(i; i<3; i  )
        {
            var row = table.insertRow(i);
        
            var cell0=row.insertCell(0);
            var element0=document.createElement("input");
            element0.type="text";
            element0.value = "Hello : "   i;
            cell0.appendChild(element0);
        
            var cell1=row.insertCell(1);
            var element1=document.createElement("input");
            element1.type="text";
            element1.value = "Welcome : "   i*2;
            cell1.appendChild(element1);
        
            var cell2=row.insertCell(2);
            var element2=document.createElement("input");
            element2.type="button";
            element2.value = "Clcik : "   i*i;
            element2.onclick = function show_id() { alert("Record ID"); }
            cell2.appendChild(element2);
        }
        
</script>
  

Ответ №1:

Почему вы не можете использовать an index для отслеживания записи? Надеюсь, это тот вариант использования, который вы ищете. Включите более подробную информацию на случай, если вам понадобится что-то еще, кроме этого.

 <table id="myTable">
</table>  
             
<script>
    
        var table=document.getElementById("myTable");
        var i=0;
        for(i; i<3; i  )
        {
            const recordId = i 1;
            var row = table.insertRow(i);
        
            var cell0=row.insertCell(0);
            var element0=document.createElement("input");
            element0.type="text";
            element0.value = "Hello : "   i;
            cell0.appendChild(element0);
        
            var cell1=row.insertCell(1);
            var element1=document.createElement("input");
            element1.type="text";
            element1.value = "Welcome : "   i*2;
            cell1.appendChild(element1);
        
            var cell2=row.insertCell(2);
            var element2=document.createElement("input");
            element2.type="button";
            element2.value = "Clcik : "   i*i;
            element2.onclick = function show_id() { 
            alert("Record ID - "   recordId); 
            }
            cell2.appendChild(element2);
        }
        
</script>