我的部分视图是抛出错误:
{"Encountered end tag \"tr\" with no matching start tag. Are your start/end tags properly balanced?\r\n"}
我无法找到标签未关闭的位置。我花了很多时间试图找到错误,但无济于事。
我相对肯定它与我在视图中的代码元素有关,但我无法确定它。
这是Razor视图。
@{
DateTime dateValue;
}
<div class="table-responsive">
<input type="checkbox" class="checkallMaster" />
<table id="reportTable" class="table table-hover table-condensed table-striped">
<thead>
<tr>
<th style="text-align: left;">Variable Investment Option</th>
<th>Unit Value<br /><span style="font-weight: normal;">@Model.Start.ToString("dddd, M/d/yyyy")</span></th>
<th>Start Date</th>
<th>Select Values<br />To Download<br /><input type="checkbox" /></th>
</tr>
</thead>
<tbody>
@foreach (System.Data.DataRow row in Model.Output.Rows)
{
<tr>
<td align="left">@row.ItemArray[1].ToString();</td>
<td align="right" width="50px;">@row.ItemArray[2].ToString();</div></td>
<td align="center">
if (DateTime.TryParse(row.ItemArray[3].ToString(), out dateValue))
{
@Html.Raw(dateValue.ToString("M/d/yyyy"));
}
else
{
@Html.Raw("N/A");
}
</td>
<td align="center"><input type="checkbox" name="FundCodes" value="@row.ItemArray[0].ToString()" class="checkall" /> </td>
</tr>
}
</tbody>
</table>
</div>
答案 0 :(得分:4)
您正在div
中间关闭td
:
<td align="right" width="50px;">@row.ItemArray[2].ToString();</div></td>
这将尝试关闭包含整个表的div
,这意味着表结构从div
中流出。此后的任何内容都将是未定义的,基本上是标记错误。
另请注意,您不需要使用分号来终止Razor语法语句。我想这些实际上会以半冒号的形式呈现给浏览器,你可能不想要它。