以下代码有什么问题:我收到错误信息
错误1;预期
<%if (Model.ReferenceFields != null)
{%>
<%int count = 1; %>
<%foreach (var referenceName in Model.ReferenceFields)
{%>
<%var value = "value"; %>
<%count++; %>
<%value = value + count.ToString(); %>
<tr>
<td><input type="hidden" name="Tests.Index" value='<%value%>' /></td>
<td><input type="text" name="Tests['<%value%>'].Value"/></td>
<td><input type="button" value= "Add" /></td></tr>
<%}
%>
<%}
%>
答案 0 :(得分:2)
基本问题是这样的行
<input type="hidden" name="Tests.Index" value='<%value%>' />
所以你想要将值的内容写入html,但那不是这样做的。它应该是
<input type="hidden" name="Tests.Index" value='<% Response.Write(value); %>' />
或Response.Write的快捷方式是&lt;%= so
<input type="hidden" name="Tests.Index" value='<%= value %>' />
ASP101 - Writing Your First ASP.NET Page
另一个问题是,代码的格式化,坦率地说是丑陋的,而且当你试图阅读它时,你会让自己努力工作。试试这个。
<%
if (Model.ReferenceFields != null)
{
int count = 1;
foreach (var referenceName in Model.ReferenceFields)
{
var value = "value";
count++;
value = value + count.ToString();
%>
<tr>
<td><input type="hidden" name="Tests.Index" value='<%= value %>' /></td>
<td><input type="text" name="Tests['<%= value %>'].Value"/></td>
<td><input type="button" value= "Add" /></td></tr>
<%
}
}
%>