さて、基本的に私がやろうとしているのは、MySQL挿入から返される「slot_id」の作成されたID値を取得することです。(動作)、次に、slot_id の戻り値で新しい tr の ID を設定しようとしています。変数 slot_id が設定されています。これを間違って使用しているだけだと思います。これがコードです。console.log(slot_id); を追加した場合 成功した場合は値を返します。
$('#add_slot').click(function(e){
var slot_id;
date = $("#slot_date").val();
start_time = $("#slot_start").val();
end_time = $("#slot_end").val();
speaker_id = $("#speaker").val();
speaker = $("#speaker option:selected").text();
event_id = $("#event_id").val();
last_row = $("tr:last").hasClass('odd');
$.ajax({
type: 'POST',
url: 'ajax/process_slot.php',
data: {
date: date,
start_time: start_time,
end_time: end_time,
speaker_id: speaker_id,
event_id: event_id
},
success: function(response){
var $bodyresp=$(response);
var resp = $bodyresp.filter("#response").text();
slot_id = $bodyresp.filer("#slotid").text();
/// slot_id is the problem child. Why is it when I access it below to set the tr id value to slot_' + slot_id ......
$("#flash_message").html(resp);
$('#mask , .popup').fadeOut(300 , function() {
$('#mask').remove();
});
}
});
if(last_row === false){
$("#slot_table").find('tbody')
.append($('<tr id="slot_'+ slot_id +'" class="odd">')
.append($('<td>' + date + '</td>' + '<td>' + start_time + '</td>' + '<td>' + end_time + '</td><td>'+ speaker+'</td><td><a class="delete_row" href="#delete_row">Delete Row</a></td>')
)
);
}else {
$("#slot_table").find('tbody')
.append($('<tr id="slot_'+slot_id+'" class="even">')
.append($('<td>' + date + '</td>' + '<td>' + start_time + '</td>' + '<td>' + end_time + '</td><td>'+ speaker+'</td><td><a class="delete_row" href="#delete_row">Delete Row</a></td>')
)
);
}
e.preventDefault();
})