内联如果然后声明。 ASP.NET

时间:2016-03-15 19:02:30

标签: javascript c# asp.net

我需要像

那样发表声明
<%#((bool)Eval("inactive")) ? "<span style='color:red;font-weight:600;'>INACTIVE</span>" : "<span style='color:green;font-weight:600;'>ACTIVE</span>"%>  

除了布尔值之外,我需要它来获取3个条件语句。

所以使用

<%#Eval("Program_Num") %>  

我需要它说

  • 如果Program_Num == 1那么它是X,
  • 如果Program_Num == 2那么它是y,
  • 如果Program_Num == 3那么它是z;

我会尽我所能澄清并回答任何问题,谢谢你的帮助。

3 个答案:

答案 0 :(得分:2)

尝试这样的事情。

<%# (int)Eval("Program_Num") == 1 ? "X" : (int)Eval("Program_Num") == 2 ? "Y" : (int)Eval("Program_Num") == 3 ? "Z" : "default value" %>

就像这样说。

if ((int)Eval("Program_Num") == 1)
    "X"
else if ((int)Eval("Program_Num") == 2)
    "Y"
else if ((int)Eval("Program_Num") == 3)
    "Z"
else
    "default value"

答案 1 :(得分:0)

您可以尝试以下操作:

<%#Eval("Program_Num") == 1 ? "X" : Eval("Program_Num") == 2 ? "y" : Eval("Program_Num") == 3 ? "z" %> 

显然你需要替换&#34; x&#34; &#34; Y&#34; &#34; Z&#34;无论你想要什么,它都会显示出来。

答案 2 :(得分:0)

它不优雅,但您可以使用它的嵌套版本:

var x = Program_Num == 1 ? "X" : (Program_Num == 2 ? "x" : (Program_Num == 3 ? "y" : "DEFAULT"))

为了清楚起见,我把它保持为干净的C#。您可以将其适用于ASP.NET。

如果您要进入三个级别,那么现在是时候开始使用正确的if或switch结构了。