javascript - Cannot get text from td (ASP.NET MVC ) -
i have table display via razor syntax
here code
@foreach (var item in model) { <tr> <td class="point"> @(rowno += 1) </td> <td class="title"> @html.displayfor(modelitem => item.date_of_birthday) </td> <td id="name" class="title"> @html.displayfor(modelitem => item.name) </td> <td class="title"></td> <td class="title"></td> <td class="title"></td> <td style="text-align: end;"> <img id="delete_pt" src="~/images/icons8-delete-50.png"/> <img src="~/images/doc-50.png"/> </td> </tr> } i try value of
<td id="name" class="title"> @html.displayfor(modelitem => item.name) </td> via js
here code
<script> $(document).on('click', '#delete_pt', function () { var title = $(this).find('#name').html(); console.log(title); }); but when click i'm not value it's empty. error?
your element id="delete_pt" <img> , not contain child elements. need find parent <tr> element , find <td id="name"> element.
$(document).on('click', '#delete_pt', function () { var title = $(this).closest('tr').find('#name').html(); console.log(title); }); however loop generating duplicate id attributes invalid html. need replace id attributes class names, example
<td class="name title"> @html.displayfor(modelitem => item.name) </td> .... <img class="delete_pt" src="~/images/icons8-delete-50.png" /> and use
$(document).on('click', '.delete_pt', function () { var title = $(this).closest('tr').find('.name').html(); console.log(title); });
Comments
Post a Comment