using if else with eval in aspx page
Is there a way to use an else if on the following eval on the aspx page .
Currently my div is as follows :
<div class="tooltip" style="display: none">
<div style="text-align: center; font-weight: normal">
Value = <%# Eval("Percentage") + "%" %>
</div>
</div>
I would like to use the following logic on my div :
If(Percentage < 50)
display "0 %"
else
display "percentage"
I tried something like this but it doesn't work :
if (<%# Eval("Percentage") %> < 50)
{
Eval("0");
}
else
{
<%# Eval("PassPercentage") + "%" %>
}
I want to know if such an operation is possible to do on the aspx page. I cannot do it in aspx.cs.
If you absolutely do not want to use code-behind, you can try conditional operator for this:
<%# ((int)Eval("Percentage") < 50) ? "0 %" : Eval("Percentage") %>
That is assuming field Percentage
contains integer.
You can try c#
public string ProcessMyDataItem(object myValue)
{
if (myValue == null)
{
return "0 %"";
}
else
{
if(Convert.ToInt32(myValue) < 50)
return "0";
else
return myValue.ToString() + "%";
}
}
asp
<div class="tooltip" style="display: none">
<div style="text-align: center; font-weight: normal">
Value =<%# ProcessMyDataItem(Eval("Percentage")) %> </div>
</div>
If you are trying to bind is a Model class, you can add a new readonly property to it like:
public string FormattedPercentage
{
get
{
If(this.Percentage < 50)
return "0 %";
else
return string.Format("{0} %", this.Percentage)
}
}
Otherwise you can use Andrei's or kostas ch. suggestions if you cannot modify the class itself
链接地址: http://www.djcxy.com/p/42848.html上一篇: 整数空值