我使用asp.net mvc和Razor。這是我的代碼我只從jQuery獲得jQuery中的第一個id剃刀視圖
@foreach (var item in Model)
{
<button class="btn btn-danger btn-xs" id="deleteSystemData" data-toggle="modal" data-target="#deleteModal" data-id="@item.SerialNumber">Delete reported data</button>
}
<script>
window.onload = function() {
var serialNumber;
$('#deleteSystemData').click(function (e) {
e.preventDefault();
serialNumber = $(this).data('id');
console.log("This number: " + serialNumber);
$("#deleteModal #serial-number").text(serialNumber);
});
$('#deleteConfirmed').click(function() {
$.ajax({
url: '/MeterReading/DeleteSystemData',
data: { serialNumber: serialNumber }
}).done(function() {
$('#deleteModal').modal('toggle');
$("#delete-system-data-success").slideDown(500)
.delay(2500)
.slideUp(500);
}).error(function() {
$('#deleteModal').modal('toggle');
$("#delete-system-data-error").slideDown(500)
.delay(2500)
.slideUp(500);
}
);
});
}
</script>
我在所有的按鈕上得到了正確的data-id="@item.SerialNumber"
。 但我的jQuery代碼僅適用於第一個按鈕。我在第一個點擊事件中添加了一個console.log(這個數字),當我點擊第一個按鈕時,我在日誌中得到一個Id,但其餘的在jQuery腳本中沒有任何Id。
我的目標是將一個id從一個按鈕傳遞給一個asp.net控制器,並刪除那個id。我也有一個bootstrap模式,但是這個工作正常。
你創建重複'id'屬性,這是無效的html和將只選擇第一個。使用類名稱 –