2013-04-08 111 views
-3

我想做一個jQuery,如果值是130的背景顏色。在jQuery中設置背景顏色?

這是到目前爲止我的代碼:

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   
    }  
} 
+1

如果您可以編輯您的答案並將代碼格式化爲更具可讀性,那將會好很多。在編輯時查看幫助以瞭解如何。 – jakobhans 2013-04-08 09:11:58

回答

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');   
    }   
} 
+0

您需要使用backgroundColor,因爲它是javascript。 – 2013-04-08 09:15:43

-1

要更改jQuery的背景顏色,你必須更改線路 「顏色:紅」在你的代碼中:

jQuery(this).css('background-color', 'red'); 
0

我覺得,函數Compute的調用不是基於對象E X:你可能調用Compute函數而不是任何ID或類$('#someID/Class')。Compute(....);因此,你不會在函數內獲得$(this)關鍵字的值。因此無論哪種方式,你必須使用jquery插件的方法,或者因爲你已經在你的問題中說過,當值爲130時,考慮元素是否改變顏色,然後使用$(this).val()而不是$( this).text(),如果元素然後使用$(this).html()而不是$(this).text()。