下午 我想知道如何根据Web服务的返回值添加一个类。
$.each(result, function (index, res) {
new_record = "<tr>" +
"<th scope=\"row\" class=\"t-left\"><a href=\"editproduct.aspx?sku=" + res.sku + "\" title=\"Edit this product listing\">" + res.title + "</a></th>" +
"<td><a href=\"http://www.amazon.co.uk/dp/" + res.asin + "\" target=\"_blank\" title=\"Visit the Amazon product listing\" >" + res.asin + "</a></td>" +
"<td>" + res.sku + "</td>" +
"<td>" + res.stock + "</td>" +
"<td> £" + res.price + "</td>" +
"<td>" + res.live + "</td>" +
"</tr>";
$('#dataResults').append(new_record);
我还返回了一个值stockUpdated,我想添加一个类来改变stock表字段的颜色,具体取决于它是否为真。
我无法记住我之前是如何做到这一点的,但它类似于if语句
非常感谢提前。
艾伦
答案 0 :(得分:2)
假设我已正确理解您的问题,您可以将class属性附加到字符串,具体取决于您的stockUpdated
属性是否为true:
$.each(result, function (index, res) {
new_record = "<tr>" +
"<th scope=\"row\" class=\"t-left\"><a href=\"editproduct.aspx?sku=" + res.sku + "\" title=\"Edit this product listing\">" + res.title + "</a></th>" +
"<td><a href=\"http://www.amazon.co.uk/dp/" + res.asin + "\" target=\"_blank\" title=\"Visit the Amazon product listing\" >" + res.asin + "</a></td>" +
"<td>" + res.sku + "</td>" +
"<td" + (res.stockUpdated ? " class='updated'" : "") + ">" + res.stock + "</td>" +
"<td> £" + res.price + "</td>" +
"<td>" + res.live + "</td>" +
"</tr>";
$('#dataResults').append(new_record);
});
我已经用三级条件内联完成了因为我喜欢将字符串连接在一起。您可以轻松地停止上一个td
末尾的连接,然后在下一个if
周围打开完整的td
语句。
答案 1 :(得分:0)
您可以创建一个变量并使用class-attribute填充它:
var classAttr = (res.StockUpdated) ? "class=\"updated\"" : "";
然后你可以这样做:
"<td " + classAttr + ">" + res.stock + "</td>" +
完整示例:
$.each(result, function (index, res) {
var classAttr = (res.StockUpdated) ? "class=\"updated\"" : "";
new_record = "<tr>" +
"<th scope=\"row\" class=\"t-left\"><a href=\"editproduct.aspx?sku=" + res.sku + "\" title=\"Edit this product listing\">" + res.title + "</a></th>" +
"<td><a href=\"http://www.amazon.co.uk/dp/" + res.asin + "\" target=\"_blank\" title=\"Visit the Amazon product listing\" >" + res.asin + "</a></td>" +
"<td>" + res.sku + "</td>" +
"<td " + classAttr + ">" + res.stock + "</td>" +
"<td> £" + res.price + "</td>" +
"<td>" + res.live + "</td>" +
"</tr>";
$('#dataResults').append(new_record);