2016-01-06 53 views
-2

我想動態添加redclass或greenclass,以解決正在處理的值。無法正確地向表中添加類td

請您爲什麼我收到greenclass而不是redclass最後TD

末TD屬於30日

這是我的代碼

var eres = { 
    "twentyday": 2176.8575, 
    "tenday": 2235.3, 
    "thirtyday": 2105.25, 
    "last_close": 2168.25 
} 

var html = ''; 
var classtoadd = 'redclass' 

var day10 = parseFloat(eres.tenday); 
var day20 = parseFloat(eres.twentyday); 
var day30 = parseFloat(eres.thirtyday); 
var last_close = parseFloat(eres.last_close); 

day10 = day10.toFixed(2); 
day20 = day20.toFixed(2); 
day30 = day30.toFixed(2); 


if (day10 > last_close) { 
    classtoadd = 'greenclass'; 
} 


if (day20 > last_close) { 
    classtoadd = 'greenclass'; 
} 

if (day30 > last_close) { 
    classtoadd = 'greenclass'; 
} 

html += '<tr><td>Market Price</td><td class="">' + last_close + "</td></tr>", html += '<tr><td>10DAY</td><td class="' + classtoadd + '">' + day10 + "</td></tr>", html += '<tr><td>20 Day</td><td class="' + classtoadd + '">' + day20 + "</td></tr>", html += '<tr><td>30 Day</td><td class="' + classtoadd + '">' + day30 + "</td></tr>", html += "</tbody>" 

$("#smatable").html(html) 

這是我的小提琴

https://jsfiddle.net/h4JXs/3336/

你可以pl輕鬆告訴我如何解決這個問題

+0

UM,您對3種不同的狀態使用相同的變量....如果類需要不同,則需要每個狀態的變量。你對逗號操作符的使用也很奇怪。 – epascarello

+0

非常感謝... – Pawan

回答

1

正如我在我的評論中所說的,你試圖在一個變量中顯示3種不同的狀態。如果狀態需要不同,則需要爲每個狀態使用一個變量。

var class10 = day10 > last_close ? "greenclass" : "redclass"; 
var class20 = day20 > last_close ? "greenclass" : "redclass"; 
var class30 = day30 > last_close ? "greenclass" : "redclass"; 

html += '<tr><td>10 Day</td><td class="' + class10 + '">' + day10 + '</td </tr>'; 
html += '<tr><td>20 Day</td><td class="' + class20 + '">' + day20 + '</td </tr>'; 
html += '<tr><td>30 Day</td><td class="' + class20 + '">' + day30 + '</td </tr>';