meJ*_*rew 3 css asp.net-mvc razor
我知道如何仅通过使用三元运算符在给定条件下格式化Razor中元素的css syle,如以下示例所示:
<div style="@(Model.Condition ? "float:left" : "float:right")">
Run Code Online (Sandbox Code Playgroud)
但是我有一个更复杂的决策块,应该嵌套两个三元运算符,这不是一个很好的实践。我已经尝试过这种方式:
<div style="@{
if (Model.Condition)
{
"float:left"
}
else
{
"float:right"
}
}">
Run Code Online (Sandbox Code Playgroud)
它显示错误:
; 预期
在if-else块中的字符串之后,如果我添加;它,仍然给出如下错误
仅赋值,调用,递增,递减和新对象表达式可以用作语句
有没有办法使用if-else块来做到这一点?
您总是可以在View的开头声明局部变量:
@{
var yourStyle = "";
if(Model.Condition)
{
yourStyle = "float:left;";
}
else
{
yourStyle = "float:right;";
//any other conditions and logic
}
}
Run Code Online (Sandbox Code Playgroud)
然后在div中使用它:
<div style="@yourStyle">
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1600 次 |
| 最近记录: |