-3

我正在尝试制作一个 jQuery,如果值为 130,则为背景颜色。

到目前为止,这是我的代码:

function Compute(p, m, f, studno) {
  var average;
  average = parseFloat(p * 0.3) + parseFloat(m * 0.3) + parseFloat(f * 0.4);
  $("#average_" + studno).val(average.toFixed());                           
  if($(this).text()=="130"){
    color:red           
  }       
}
4

3 回答 3

1

改用这个 - $(this).css('backgroundColor', 'red');

function Compute(p, m, f, studno) {
     var average;
     average = parseFloat(p * 0.3) + parseFloat(m * 0.3) + parseFloat(f * 0.4);
     $("#average_" + studno).val(average.toFixed());                            
     if($(this).text()=="130"){
       $(this).css('backgroundColor', 'red');           
     }        
}
于 2013-04-08T09:14:00.343 回答
0

我认为,对函数 Compute 的调用不是基于对象,例如:您可能没有在任何 ID 或类 $('#someID/Class').Compute(....); 上调用 Compute 函数,因此,您不会在函数内获得 $(this) 关键字的值。因此,无论哪种方式,您都必须使用 jquery 插件方法,或者因为您在问题中说过,当值为 130 时更改颜色,考虑元素是否为 ,然后使用 $(this).val() 而不是 $( this).text(),如果元素是,则使用 $(this).html() 而不是 $(this).text()。

于 2013-04-08T09:30:25.960 回答
-1

要更改 jQuery 中的背景颜色,您必须通过以下方式更改代码中的“color:red”行:

jQuery(this).css('background-color', 'red');
于 2013-04-08T09:14:34.900 回答