テーブルセルの背景色を更新するために jquery ajax コールバック関数を取得しようとしていますが、機能させることができません。
次のコードがあります (Firebug でエラーは発生しません)。
$(".tariffdate").click(function () {
var property_id = $('#property_id').attr("value");
var tariff_id = $('#tariff_id').attr("value");
var tariff_date = $(this).attr("id");
$.post("/admin/properties/my_properties/booking/edit/*", { property_id: property_id, tariff_id: tariff_id, tariff_date: tariff_date },
function(data){
var bgcol = '#' + data;
$(this).css('background-color',bgcol);
alert("Color Me: " + bgcol);
});
予想されるデータ (6 桁の 16 進数コード) が返されていることを確認するためだけにアラートを追加しましたが、テーブル セルの背景が頑固に変更を拒否しています。
すべての表のセルにはクラス .tariffdate がありますが、個別の ID もあります。
テストとして、そのクラスのホバー機能を作成してみました。
$(".tariffdate").hover(function () {
$(this).css('background-color','#ff0000');
});
上記は正常に動作するため、コールバック関数が機能しない理由について本当に混乱しています。何か案は?