根据返回的数据设置类

时间:2012-07-11 08:59:51

标签: jquery css ajax

上午,

当我从数据库返回数据以显示更改/更新时,我正在设置td的类。 在其中一个返回的字段中,我有4个选项,我需要根据结果更改该字段的css类。

 "<td" + (res.prodPublished ? "" : " class='updated'") + ">" + res.prodPublished + "</td>" 

我目前正在使用上述内容,如果你有真假,那就没关系。但是我有...... 真,假,加工,新。

如何根据这些选项更改课程?

提前致谢。

3 个答案:

答案 0 :(得分:2)

使用js功能?

function get_cell_class(type) {
    if(type == "True") {
        return " class='updated'";
    }

    if(type == "False") {
        return " class='class_2'";
    }

    ..
}

然后在您的HTML代码中:

"<td" + get_cell_class(res.prodPublished) + ">" + res.prodPublished + "</td>"

方法2:

或者您可以只创建值的CSS类:

.my_css_true {
    color: blue;
}

.my_css_updated {
    color: orange;
}

然后在HTML中:

"<td class=\"my_css_" + res.prodPublished + "\">" + res.prodPublished + "</td>"

希望这有帮助!

答案 1 :(得分:2)

使用字典

var classes = {
  'True': ' class="updated"',
  'False': '',
  'New': ' class="other-classname-new"',
  'Processing': ' class="other-classname-processing"'
};

//some time later

 "<td" + classes[res.prodPublished] + ">" + res.prodPublished + "</td>"

请注意"True""False"是字符串,而不是布尔基元。因此res.prodPublished也必须是一个字符串。

答案 2 :(得分:0)

您只需要设置if else而不是

您可以将其作为标准编写,如果不是或者与现在相同。

var theClass = (result == "true" ? "class for true": 
      (result == "false" ? "class for false":
              (result == "processing" ? "class for processing": "class for new")));