2016-09-14 79 views
0

在过去的几天里,我已经尝试了很多我在这里找到的选项,但仍然没有运气。Google sheet JSON table feed,根据单元格中的值更改一行的颜色

没有找到解决方案来获取JSON feed到html页面这里;-)这是真棒! 因为我很新手得到这个工作是一个启示,男人感觉很好:)

无论如何,我的问题;

我有这个JavaScript:

var spreadsheetID = "1YUKom7FNEvxqSlQiSao_aLEcC0cLVyg5xmBv-JsaIUs"; 

var url = "https://spreadsheets.google.com/feeds/list/" + spreadsheetID + "/od6/public/values?alt=json"; 

$.getJSON(url, function(data) { 

    var html = ''; 

    html += '<table cellpadding=2 cellspacing=0 border=0 width=100% id=table_id>'; 
    html += '<tr>'; 
    html += '<td>Date</td>'; 
    html += '<td>Currency Pair</td>'; 
    html += '<td>Buy/Sell</td>'; 
    html += '<td>Stop-Loss</td>'; 
    html += '<td>Amount</td>'; 
    html += '<td>Price</td>'; 
    html += '<td>Closing Price</td>'; 
    html += '<td>P/L</td>'; 
    html += '<td>PIP</td>'; 
    html += '<td>P/L US$</td>'; 
    html += '<td>P/L EURO</td>'; 
    html += '<td>Entry Time</td>'; 
    html += '<td>Exit Time</td>'; 
    html += '</tr>'; 

    var entry = data.feed.entry; 
    for (var i = 0; i < entry.length; i++) { 
    html += '<tr>'; 
    html += '<td>' + entry[i]['gsx$date']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$pair']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$bs']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$sl']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$amount']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$price']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$closeprice']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$pl']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$pip']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$plusd']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$pleuro']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$entry']['$t'] + '</td>'; 
    html += '<td>' + entry[i]['gsx$exit']['$t'] + '</td>'; 
    html += '</tr>'; 
     } 
    html += '</table>'; 

    $('.console').html(html); 
}); 

这是HTML

<!DOCTYPE html> 
<html > 
<head> 
<meta charset="UTF-8"> 
<title>...</title> 
</head> 

<body> 

<div class="console"></div> 

<script src="js/index.js"></script> 

</body> 
</html> 

我所寻找的是,如果此行

html += '<td>' + entry[i]['gsx$pl']['$t'] + '</td>'; 

中的值包含的值其中有“ - €”表示整行变红。

在此先感谢如果有人在这里可以帮助我。

回答

0

你只是想在该特定行周围添加一个条件来检查符号。

if (entry[i]['gsx$pl']['$t'].indexOf("-€") !== -1) { 
    // Has the symbol 
    html += '<td style="background-color: #600;">' + entry[i]['gsx$pl']['$t'] + '</td>'; 
} else { 
    // Doesn't have symbol 
    html += '<td>' + entry[i]['gsx$pl']['$t'] + '</td>'; 
} 
+0

嗨汤姆,感谢您的回复:)所以这一点之后呢? html + ='​​'+ entry [i] ['gsx $ pl'] ['$ t'] +''; –

+0

会取代,而不是追求 – Tom

相关问题