1

朝、

変更/更新を表示するためにデータベースからデータを返すときに、tdのクラスを設定しています。返されたフィールドの1つに、4つのオプションがあり、結果に応じてそのフィールドのcssクラスを変更する必要があります。

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

私は現在上記を使用していますが、これはあなたが真か偽かを問わず問題ありません。しかし、私は持っています... True、False、Processing、New。

これらのオプションに応じて、クラスを変更するにはどうすればよいですか?

前もって感謝します。

4

3 に答える 3

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>"

お役に立てれば!

于 2012-07-11T09:05:03.303 に答える
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、文字列でもある必要があります。

于 2012-07-11T09:06:33.897 に答える
0

代わりにifelseを設定する必要があります

それ以外の場合、または現在と同じ方法で、標準として記述できます。

var theClass = (result == "true" ? "class for true": 
      (result == "false" ? "class for false":
              (result == "processing" ? "class for processing": "class for new")));
于 2012-07-11T09:05:18.577 に答える