2015-03-18 3 views
1

Привет всем Я хотел бы использовать тернарный оператор на странице aspx. Я имею две публичные переменные в моем файле aspx.cs следующимТернарный оператор в aspx странице

public string currency = "INR"; 
public decimal amount = 100; 

Я хотел бы обрамляют HTML-теги на основе моей валюты, в настоящее время я делаю как этот

<% if (currency != "INR") 
    {%> 
    <span>$<%=amount%></span> 
    <%} 
    else 
    { %> 
    <span<%=amount%></span> 
    <%} %> 

Я хотел бы чтобы сделать это на одну строку

<span><% if (currency != "INR") %> $ amout <% : %> </span>

Но я получаю ошибку, как Invalid expression term ':' так может кто-нибудь помочь мне, если это возможно

ответ

2

Трудовой оператор работает без необходимости. Он выглядит следующим образом:

booleanExpression ? trueValue : falseValue 

Но вы не можете относиться к ASP.NET, как PHP, так что вам придется сделать это в одном <% %> обертке

<span><%= (currency != "INR" ? "$" : "") + amount %></span> 
+0

Я получаю 'термин некорректное выражение«:» ', когда я исполняю – Dotnet

+0

@Dotnet У вас не хватает еще одно значение после <% : %>. Вам нужно предоставить еще одно значение, чтобы заставить его работать. –

+0

'<% currency! =" INR "? %><% сумма:%> $ <% amount %> 'все еще не получается – Dotnet

1

Удалить, если из выражения

Вы должны указать еще одно значение после:

<span><%= (currency != "INR" ? "" : "Rs.") + amount %></span> 
+0

' <% currency! = "INR"? %><% сумма:%> $ <% amount %> ' – Dotnet

+0

@Dotnet Пожалуйста, попробуйте вот так <% = currency! =" INR "? сумма: сумма%>

1

Код пользователя bytecode77 выглядит действительно awkwar д. Я хотел бы предложить:

<span><%= (currency != "INR") ? amount : " " %></span> 
Смежные вопросы