额外的空间放在表格单元格中

时间:2011-01-05 18:54:05

标签: .net asp.net html

出于某种原因,这段代码:

<td id="ddlHolidayCity" colspan="3">
                    <% for (int i = 0; i < Model.Trx.TransactionHolidayCityCollection.Count; i++)
                        {%>
                            <%=i > 0 ? "," : ""%>
                            <%=DropDownData.HolidayDays().ToList().Find(item => item.Value == Model.Trx.TransactionHolidayCityCollection[i].HolidayCityID.Value.ToString()).Text%>
                        <%}
                    %>
                    </td>

正在显示这样的城市:

纽约,伦敦

- 看到逗号前的额外空格?来自哪里?

2 个答案:

答案 0 :(得分:1)

在转义HTML以评估i之前,它可能来自换行符或其他一些空白字符。由于它位于for循环内,因此会将其添加到输出中。尝试删除有角度的括号之间的空格时会发生什么:

<td id="ddlHolidayCity" colspan="3">
                    <% for (int i = 0; i < Model.Trx.TransactionHolidayCityCollection.Count; i++)
                        {%><%=i > 0 ? "," : ""%>
                            <%=DropDownData.HolidayDays().ToList().Find(item => item.Value == Model.Trx.TransactionHolidayCityCollection[i].HolidayCityID.Value.ToString()).Text%>
                        <%}
                    %>
                    </td>

答案 1 :(得分:0)

要测试此项,请将代码更改为一行。删除%&gt;之间的所有间距&lt;%我打赌它会修复它。当我将代码放在一行中时,请查看下面的所有间距。 Coldfusion有一个指令告诉渲染器如何解释代码页空白区域。

<td id="ddlHolidayCity" colspan="3">                     <% for (int i = 0; i < Model.Trx.TransactionHolidayCityCollection.Count; i++)                         {%>                             <%=i > 0 ? "," : ""%>                             <%=DropDownData.HolidayDays().ToList().Find(item => item.Value == Model.Trx.TransactionHolidayCityCollection[i].HolidayCityID.Value.ToString()).Text%>                         <%}                     %>                     </td>