я хочу TD индекс из таблицы, используя javascript / jquery

0

У меня есть эта таблица. Я хочу, чтобы щелкнуть по кнопке редактирования, пока не покажет мне его индекс TD на загрузке страницы в качестве предупреждения. Спасибо заранее, я надеюсь, что кто-то поможет мне...

Как получить индекс html table td cell по javascript?

        <tbody>
            <tr class="row" >
                <td>Yes</td>
                <td class="lalign" >0
                </td>

                <td >Route 3
                </td>

                <td >3
                </td>
                <td id="long">77.22496
                </td>

                <td  id="lat">30.242607
                </td>

                <td >null
                </td>
                <td >3
                </td>

                <td>
                    <input type="button" value="Edit" onclick=""/>
                    <input type="button" value="Delete" onclick="deleteRow(this.parentNode.parentNode.rowIndex)"/>

                </td>
            </tr>

        </tbody>
    </table>

4 ответа

2

FIDDLE DEMO

   <td>
          <input type="button" value="Edit" onclick=""/>
           <input type="button" value="Delete" onclick="deleteRow(this)"/>
   </td>

затем

function deleteRow(obj){

var index= $(obj).closest("td").index();

}
  • 0
    его всегда возвращают -1
  • 0
    @AshishSrivastava, проверьте демо скрипки. Возвращает 8
Показать ещё 2 комментария
1
<table>
     <tbody>
            <tr class="row" >
                <td>Yes</td>
                <td class="lalign" >0
                </td>

                <td >Route 3
                </td>

                <td >3
                </td>
                <td id="long">77.22496
                </td>

                <td  id="lat">30.242607
                </td>

                <td >null
                </td>
                <td >3
                </td>

                <td>
                    <input type="button" value="Edit" onclick=""/>
                    <input type="button" class="deleteBtn" value="Delete"/>

                </td>
            </tr>

        </tbody>
    </table>

JQuery>

$(".deleteBtn").click( function(){

var index= $(this).closest("td").index();
alert(index);
});

скрипка

Обновлено:

Если вы хотите, чтобы текущий номер ячейки относился к родительской строке:

var indextd= $(this).closest("td").index()+1;
alert(indextd);

Если вы хотите, чтобы текущий номер ячейки относился к содержащейся таблице:

var indextd= $(this).closest("td").index()+1;
var indextr= $(this).closest("tr").index()+1;

alert(indextd*indextr);

ОБНОВЛЕНО FIDDLE

  • 0
    jsfiddle.net/ashishsrivastava22/GQ4xY Посмотри, это всегда дает мне 8
  • 0
    Это даст 8, потому что он всегда проверяет индекс текущего td своего родительского tr
Показать ещё 1 комментарий
1
$(SELECTOR).closest("td").index();
0

Добавить id edit кнопку для редактирования <input id="edit" type="button" value="Edit" onclick=""/>, а затем вы можете сделать что - то вроде этого:

Обновлен HTML

<table>
    <tbody>
        <tr class="row" >
            <td>Yes</td>
            <td class="lalign" >0
            </td>

            <td >Route 3
            </td>

            <td >3
            </td>
            <td id="long">77.22496
            </td>

            <td  id="lat">30.242607
            </td>

            <td >null
            </td>
            <td >3
            </td>

            <td>
                <input id="edit" type="button" value="Edit" onclick=""/>
                <input type="button" value="Delete" onclick="deleteRow(this.parentNode.parentNode.rowIndex)"/>

            </td>
        </tr>

    </tbody>
</table>

JS

$(document).ready(function() {
    $('#edit').click(function(){
       console.log($(this).parent("td").index()); 
    });
});

Демо-ссылка

Ещё вопросы

Сообщество Overcoder
Наверх
Меню