i
- это переменная в вашем коде C #, поэтому вам нужно вывести ее в HTML на стороне сервера, а не из JS.Вы можете сделать это следующим образом:
<a href="#" onclick="DeleteCurrentImage(@i);">Delete</a>
Примечание. Я удалил атрибут id
здесь, когда вы создавали дубликаты, которые являются недопустимыми.
Как говорится, гораздо лучшая идеяиспользуйте ненавязчивые обработчики событий вместо on*
атрибутов событий.Затем вы можете просто пройти через DOM, чтобы найти контент, связанный с элементом, вызвавшим событие, без необходимости создавать какие-либо уникальные атрибуты id
.Помечая вопрос с помощью jQuery, вы можете добиться этого следующим образом:
<div id="filesList">
@foreach (var item in imgArray)
{
<div class="img101 floatleft">
<img src="@item" />
<a href="#" class="DeleteCurrentImage">Delete</a>
</div>
}
<div style="clear: both"></div>
</div>
$('.DeleteCurrentImage').click(function() {
$(this).prev('img').remove();
});
Обратите внимание, что при этом удаляется элемент img
.Если вы хотите удалить весь содержащий div
, измените .prev('img')
на .closest('div')