Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery-can';t在ajax回调函数中设置css属性_Css_Jquery_Callback_Background Color - Fatal编程技术网

jQuery-can';t在ajax回调函数中设置css属性

jQuery-can';t在ajax回调函数中设置css属性,css,jquery,callback,background-color,Css,Jquery,Callback,Background Color,我试图获得一个jqueryajax回调函数来更新表单元格的背景颜色,但是我无法让它工作 我有以下代码(在Firebug中不会产生错误): 我添加此警报只是为了确认我正在返回预期的数据(一个6位十六进制代码),确实如此,但我的表单元格的背景顽固地拒绝更改 所有表格单元格都有class.tariffdate,但也有单独的ID 作为测试,我尝试为该类创建一个悬停函数: $(".tariffdate").hover(function () { $(this).css('background-col

我试图获得一个jqueryajax回调函数来更新表单元格的背景颜色,但是我无法让它工作

我有以下代码(在Firebug中不会产生错误):

我添加此警报只是为了确认我正在返回预期的数据(一个6位十六进制代码),确实如此,但我的表单元格的背景顽固地拒绝更改

所有表格单元格都有class.tariffdate,但也有单独的ID

作为测试,我尝试为该类创建一个悬停函数:

$(".tariffdate").hover(function () {
   $(this).css('background-color','#ff0000');
});

上面的方法很好用——所以我真的很困惑为什么我的回调函数不能正常工作。有什么想法吗?

检查ajax回调函数中的“this”变量是什么。我怀疑它不是指.tariffdate

检查ajax回调函数中的“this”变量。我怀疑它不是指AJAX完成处理程序中的.tariffdate

,该的实例被更改为AJAX对象。您需要将
this
的实例保存到一个对象并使用该对象。例如:

$(".tariffdate").click(function () {
   var property_id = $('#property_id').attr("value");
   var tariff_id = $('#tariff_id').attr("value");
   var tariff_date = $(this).attr("id");
   var tariff = $(this);
   $.post("/admin/properties/my_properties/booking/edit/*", 
      { property_id: property_id, tariff_id: tariff_id, tariff_date:  tariff_date },
      function(data) {
         var bgcol = '#' + data;
         tariff.css('background-color',bgcol);
         alert("Color Me: " + bgcol);
      }
   );
});

在AJAX完成的处理程序中,
this
的实例被更改为AJAX对象。您需要将
this
的实例保存到一个对象并使用该对象。例如:

$(".tariffdate").click(function () {
   var property_id = $('#property_id').attr("value");
   var tariff_id = $('#tariff_id').attr("value");
   var tariff_date = $(this).attr("id");
   var tariff = $(this);
   $.post("/admin/properties/my_properties/booking/edit/*", 
      { property_id: property_id, tariff_id: tariff_id, tariff_date:  tariff_date },
      function(data) {
         var bgcol = '#' + data;
         tariff.css('background-color',bgcol);
         alert("Color Me: " + bgcol);
      }
   );
});

你是个明星,这就是问题所在。谢谢你是个明星,这就是问题所在。谢谢