私は、シフト情報(以下のスクリーンショット)を入力するためのフォームを持っています。
テーブルの値を保持する配列を作成しました。ユーザーは時にボタンをクリックすると「削除」をどのように私はTehcnicianItemsから項目を削除するには クリックしたときに配列アイテムを削除する
$(function() {
var TechnicianItems = [];
$('#TechnicianAdd').click(function() {
var isValidItem = true;
if (isValidItem) {
var $technicianId = parseInt($('#TechnicianId').val().trim());
var $technicianText = $('#TechnicianId').children("option").filter(":selected").text().trim();
var $shiftId = parseInt($('#ShiftId').val().trim());
var $shiftText = $('#ShiftId').children("option").filter(":selected").text().trim();
var $duration = parseFloat($('#TechnicianDuration').val().trim());
var $break = parseFloat($('#TechnicianBreak').val().trim());
var $comment = $('#TechnicianComment').val().trim();
TechnicianItems.push({
TechnicianId: $technicianId,
ShiftId: $shiftId,
Duration: $duration,
Break: $break,
Comment: $comment
});
// Clear the fields after insert.
$('#TechnicianId').val('');
$('#ShiftId').val('');
$('#TechnicianDuration').val('');
$('#TechnicianBreak').val('');
$('#TechnicianComment').val('');
// Append the newly added entry to #partlogs table.
$table = $('#shiftlogs>tbody').last();
$row = $('<tr/>');
$row.append($('<td/>').html($technicianText));
$row.append($('<td/>').html($shiftText));
$row.append($('<td/>').html($duration));
$row.append($('<td/>').html($break));
$row.append($('<td/>').html($comment));
$row.append($('<td/>').html('<input type="button" class="remove" value="Remove" />'));
$table.append($row);
} //END if(isValidItem)
}); // END $('#TechnicianAdd').click()
});
を「追加」をクリックすると、値が配列に追加されますか?私は行を削除しようとしますが、どちらもうまくいきません。
$('.remove').click(function() {
$(this).closest('tr').remove();
})
[イベントが動的に作成された要素を上の結合?]の可能な重複(http://stackoverflow.com/questions/203198/event-binding-on-dynamically -created-elements) – dave