2

我已经坚持了一段时间了;我正在使用ASP.NET MVC 4andC#用于 Web 应用程序。我从我的控制器中读取了一个 Excel 文件,并且我有一个List发送回我的view. 这就是我正在使用的:

<table>
@foreach (var item in ViewBag.range)
{ 
    <tr>
    @for (int i = 0; i < 6; i++) 
    {
        <td>
            <input style="width:50px;" value=@item />
        </td>
    }
    </tr>
}
</table>

基本上,我在Excel. 我正在尝试Excel在我的view. 但是我的有问题for loop,每个单元格执行 6 次。

有人可以帮忙吗?

4

2 回答 2

3

这样做是因为您在for循环中告诉它。也许你应该删除它。

<table>
 <tr>
  @foreach (var item in ViewBag.range)
  { 

    <td>
        <input style="width:50px;" value=@item />
    </td>

  }
 </tr>
</table>

编辑

这会将内部的项目range放入每行有 6 列的行中。

@{
 int total = 0; 
}

<table>
  @foreach (var item in ViewBag.range)
  { 
    if( total % 6 == 0 ){
        @:<tr>
    }
    <td>
        <input style="width:50px;" value=@item />
    </td>
    if( total+1 % 7 == 0 ){
        @:</tr>
    }
    total++;
  }
</table>
于 2013-02-05T21:26:57.320 回答
0

由于我没有足够的关于范围的信息......我做了以下假设; 修改和使用它

 @{var counter=0}
    <table>
          <tr>
    @foreach (var item in ViewBag.range)
    { 
         counter++;
        <td>
            <input style="width:50px;" value=@item />
        </td>
         if(counter%6==0)
         {
           @:</tr>
            if(counter<ViewBag.range.Count)
            {
             @:<tr>
               }
         }

    }
    </table>
于 2013-02-05T21:30:35.067 回答