我认为当需要对基于 Ajax 返回的元素进行简单的 css 更改时,我的“this”范围存在问题。
$('.time_slot_holder').click(function(){
var data_day=$(this).data('agent_day');
var data_time=$(this).data('agent_time');
var data="agent_id="+agent_id+"&day="+data_day+"&time="+data_time
$.ajax({
type:"POST",
url:"admin_includes/book_time.php",
data:data,
success:function(html){
var split_html=html.split("|")
if(split_html[0]=="B"){
//booking exists
alert("Bookings for this time slot exist. Contact Agent to arrange a re-assignment of this appointmnet.");
}
if(split_html[0]=="C"){
//added to db
$(this, '.time_slot_holder').css('background-color', 'red');
}
if(split_html[0]=="D"){
}
}
});//end ajax
});
我要做的就是用元素 .time_slot_holder 改变网格上的颜色
忽略来自 ajax 请求的笨拙的拆分回调,这只是试图通过数据属性识别元素。基本上我需要通过ajax的回调来获取点击元素的引用。