【问题标题】:show asp.net checkbox list items in different cells of html table在 html 表格的不同单元格中显示 asp.net 复选框列表项
【发布时间】:2017-09-02 19:30:27
【问题描述】:

this 中所述 链接,我可以在 asp.net 网页表单页面中创建复选框列表。

我想在 html 表的不同行中显示每个 listItem,因为用户将选择一些正在不同行中显示的文件。每行都有一个复选框。用户可以选择在多行中显示的多个文件。我怎样才能做到这一点?

这是我的代码,需要替换为 asp:Checkbox:

<td valign=bottom align='center'  bgcolor='#DA8191'>
<input type='checkBox' name=chkOnline value='abc'>
<td>

上面的代码被放置在一个循环中,所以复选框列表项的数量取决于从数据库传入的文件。

提前致谢。

【问题讨论】:

    标签: c# asp.net


    【解决方案1】:

    你的问题可以做一些充实。

    当您使用 asp.net 时,我想您也在使用 MVC。所以当你说文件时,我想它是你的控制器传递给视图的任何东西。在这种情况下,您必须迭代您的模型。所以,我想你需要这样的东西:

    @model ...
    
    ...
    
    @foreach (var s in Model){
    <tr>
      <td valign=bottom align='center'  bgcolor='#DA8191'>
        <input type='checkBox' name=chkOnline value='abc'>
      </td>
    </tr>
    }
    
    ...
    

    然后您可以在 for 中访问模型上的任何属性,从而根据需要生成您的复选框。

    【讨论】:

    • 他提到asp:Checkbox标签和asp.net webform page这一事实表明他正在使用asp.net网络表单。
    • 不,我没有使用 MVC
    【解决方案2】:

    您可以使用来自数据库或其他来源的值从后面的代码中填充 CheckBoxList。

    <asp:CheckBoxList ID="CheckBoxList1" runat="server"></asp:CheckBoxList>
    

    后面的代码:

    for (int i = 0; i < 5; i++)
    {
        CheckBoxList1.Items.Insert(i, new ListItem("Value " + (i + 1), i.ToString(), true));
    }
    

    或与读者一起:

    int i = 0;
    while (reader.Read())
    {
        CheckBoxList1.Items.Insert(i, new ListItem(reader["ColumnA"].ToString(), reader["ColumB"].ToString(), true));
        i++;
    }
    

    【讨论】:

    • 我想在 html 下的特定 处绑定每个复选框。我怎么能通过使用后面的代码来做到这一点
    • 那么使用单独的 CheckBox 控件而不是 CheckBoxList 会更容易。
    猜你喜欢
    相关资源
    最近更新 更多
    热门标签