【发布时间】:2023-03-12 10:40:01
【问题描述】:
以下是我用于我的 mvc 视图之一的代码,在提到的 if 条件内,html 代码无法识别。
<table class="table">
<tr class="row h4">
<td>Task</td>
<td>Parameter</td>
<td>Active</td>
<td><input type="button" class="btn btn-default" value="Add Mapping" /></td>
</tr>
@foreach (OrderTypeTaskParameterMapping mapping in Model.OrderTypeTaskParameterMappings)
{
<tr class="row">
<td>
<select class="form-control">
@foreach (Task task in Model.Tasks)
{
<option value="@task.Id"
@if (mapping.TaskId == task.Id)
{
selected="selected" **doesn't work**
}
>@task.Name</option>
}
</select>
</td>
<td>
<select class="form-control">
@foreach (Parameter p in Model.Parameters)
{
<option>@p.Name</option>
}
</select>
</td>
<td>
@if (mapping.Active)
{
<input type="button" class="btn btn-info" value="Active" />
}
else
{
<input type="button" class="btn btn-danger" value="InActive" />
}
</td>
<td><input type="button" class="btn btn-info" value="Save" /></td>
</tr>
}
</table>
在执行上述代码时出现错误:
可能是什么原因?我认为这应该有效。我在这里错过了什么吗?
【问题讨论】:
-
使用强类型的
@Html.DropDownListFor()帮助器,这样你的 html 就可以正确构建了。 -
@StephenMuecke 感谢您的工作。您能否在原始代码中指出问题。
-
投反对票的人,你能告诉我原因吗?这不是按照stackoverflow.com/a/14569710/793784
-
如果您使用
@:selected="selected"或<text>selected="selected"</text>它将起作用并且使用 html 帮助器不是“解决方法”!这是正确的方法。你的代码真的很糟糕
标签: c# html asp.net-mvc-4 razor