<td>
<%
int number = 0;
string cardProNumber;
foreach (var cardPro in cardProductList)
{
number += cardPro.Number;
cardProNumber = number.ToString();
%>
<ul>
<li>
<%=cardProNumber%></li>
</ul>
<%}%>
</td>
你把<li>拿到循环的外面就行了~
<ul> <li> <% int number = 0; string cardProNumber; foreach (var cardPro in cardProductList) { number += cardPro.Number; cardProNumber = number.ToString(); %> <%=cardProNumber%> <%}%> </li> </ul>
我想实现的是遍历完之后显示一次<%=cardProNumber%>
@小龙女-90hou: 哦~
<ul> <% int number = 0; string cardProNumber; foreach (var cardPro in cardProductList) { number += cardPro.Number; cardProNumber = number.ToString(); %> <%}%> <li> <%=cardProNumber%> </li> </ul>
@李宝亨: 这样cardProNumber变量就会跑出它的作用域的,可不可以考虑不用ul了,用response.write如何写呢
@小龙女-90hou: 咱页面上最好不要用Response.Write~
你想让变量作用域有限制,这样也方便,用个代码块标记{}就可以了:
<ul> <% { //此时的变量number和cardProNumber,作用域仅在代码块{}内 int number = 0; string cardProNumber; foreach (var cardPro in cardProductList) { number += cardPro.Number; cardProNumber = number.ToString(); %> <%}%> <li> <%=cardProNumber%> </li> <%}%> </ul>
<ul>
<% {
//此时的变量number和cardProNumber,作用域仅在代码块{}内
int number = 0;
foreach (var cardPro in cardProductList)
{
number += cardPro.Number;
%>
<%}%>
<li>
<%= number.ToString()%>
</li>
<%}%>
</ul>