我有完整的代码及其说明列表,数据库中有24条记录
我使用存储的Proc从DB中进行选择,并将其输出到VIEW()。
用户点击这些复选框,他希望的数量,并将其发布到数据库中的另一个用户表。
我浏览此用户表以获取他已检查过的数据。比如24,他检查了10个复选框。
我希望能够输出所有复选框以及用户检查的相关框。我有数据,其中所有复选框都在VIEWBAG中的列表中。我还有一个用户表,其中包含他在一个单独的列表中检查的数据,在VIEWBAG中,以便我可以在VIEW中访问它。
如何输出所有复选框,还要检查用户使用从控制器传递的VIEWBAG点击的复选框?
下面的代码,只是遍历所有数据并输出所有复选框。我需要确保新的VIEWBAG.USER中的那些用于检查下面的相关方框:
@foreach (var item in ViewBag.Expertise)
{
l_count = l_count + 1;
l_code = l_code + 1;
if (l_count == 1)
{
<td class="tdcheckbox">
<input type="checkbox" name="code@(l_code)" value="@item.expertiseCode" />
<b>@item.expertiseDesc</b>
</td>
else if (l_count < 3)
{
<td class="tdcheckbox">
<input type="checkbox" name="code@(l_code)" value="@item.expertiseCode" />
<b>@item.expertiseDesc</b>
</td>
}
else if (l_count == 3)
{
<td class="tdcheckbox">
<input type="checkbox" name="code@(l_code)" value="@item.expertiseCode" />
<b>@item.expertiseDesc</b>
</td>
}
else if (l_count % 2 == 0 && l_count == 4)
{
<td class="tdcheckbox">
<input type="checkbox" name="code@(l_code)" value="@item.expertiseCode" />
<b>@item.expertiseDesc</b>
@if (@item.expertiseCode == "OTHER")
{
@Html.TextBox("@item.otherExpertise")
<br /><font color="red">Comma separate specific expertise</font>
}
</td>
@:<tr></tr>
l_count = 0;
答案 0 :(得分:0)
如果我理解您的问题,您可以执行以下操作。
将此放在您的视图顶部
@{var ids = (List<int>)ViewBag.USERS);
然后,当您循环浏览所有复选框时,您可以执行以下操作。
if (ids != null && ids.Contains(item.expertiseCode))
{
<input type="checkbox" name="code@(l_code)" value="@item.expertiseCode" checked />
}
else
{
<input type="checkbox" name="code@(l_code)" value="@item.expertiseCode" />
}