比较Repeater c#中条件运算符中的两个Eval值

我试过了:

<option value="" selected="(==)?'selected':''">  

但我得到的输出(检查元素)

  ..BLACK  .CHARCOAL  BANANA 

有没有其他方法在Repeater中使用条件运算符或If条件

试试这个:

 selected='<%# Eval("NewID").ToString() == Eval("DataID").ToString() ? "selected" : "" %>' 

编辑:

好吧,我的html有点生疏:=)虽然上面的代码在语法上是正确的,但它不会产生所需的结果,即选择指定的option 。 这样的事情很可能是OP希望实现的目标:

  

试试这种方式

 selected='<%= Eval("NewID")==Eval("DataID")) ? String.Format("{0}","selected") : String.Empty %>' 

在HTML scriplet中,您需要对单引号和双引号保持一致。

基本上你需要执行:

  Eval("NewID") == Eval("DataID") ? "Your True Value" : "Your False Value" 

因此,用scriplet和’ – 单引号来装饰声明

  '<%# Eval("NewID") == Eval("DataID") ? "Your True Value" : "Your False Value" %>' 

对于HTML(aspx)页面中Eval()的语法:

http://msdn.microsoft.com/en-us/library/4hx47hfe(v=vs.110).aspx