Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#使HTML表格重复行_C#_Html_Asp.net_Html Table_Sqldatareader - Fatal编程技术网

C#使HTML表格重复行

C#使HTML表格重复行,c#,html,asp.net,html-table,sqldatareader,C#,Html,Asp.net,Html Table,Sqldatareader,我有这个HTML表格: <table ID="tbl_ClientSearch" style="width: 83%;" runat="server"> <thead> <tr> <td>Client Account Number</td> <td>Client Name</td> </tr> </thead>

我有这个HTML表格:

<table ID="tbl_ClientSearch" style="width: 83%;" runat="server">
   <thead>
      <tr>
         <td>Client Account Number</td>
         <td>Client Name</td>
      </tr>
   </thead>
   <tbody>
      <tr>                  
         <td><asp:Literal ID="CliNox" runat="server"></asp:Literal></td>      
         <td><asp:Literal ID="CliNamex" runat="server"></asp:Literal></td>            
      </tr>
   </tbody>
</table>

客户帐号
客户名称
“,CliNo.ToString());
CliNamex.Text=CliName.ToString();
}
康涅狄格州关闭();
}

这是可行的,但当我需要返回多行时,这只返回1行,因为我只为表体声明了1。我如何解决这个问题?提前谢谢你。

我不熟悉asp.net,但是这种情况看起来与php中可能出现的情况类似,在这种情况下,我将尝试在asp.net中生成整个表沿着

for row in tables
    append to html <tr><td>data</td><td>moredata</td></tr>

insert html into <table></table>
表中的行的

附加到html datamoredata
将html插入到

在Aspx页面中,在下表之外添加占位符

<asp:PlaceHolder ID = "tableClientSearch" runat="server"/>
”,readers.GetString(0));
html.Append(“”);
html.Append(“”);
Append(readers.GetString(1));
html.Append(“”);
html.Append(“”);
}
康涅狄格州关闭();
}
html.Append(“”);
tableClientSearch.Controls.Add(新文本{Text=html.ToString()});

在类级别删除aspx.cs文件中的受保护表

protected DataTable dt = new DataTable()
从sql查询(通过使用DataAdapter)填充这个数据表,我想您知道如何做,或者只是用谷歌搜索一下

在aspx中,替换

<tr>                  
    <td><asp:Literal ID="CliNox" runat="server"></asp:Literal></td>      
    <td><asp:Literal ID="CliNamex" runat="server"></asp:Literal></td>            
</tr>

foreach(数据行dr在dt中)
{
}

您是否检查了SP是否返回多行?@MAdeelKhalid andeel Khalid Yes。它很好用。但是我的程序只显示最后一行,因为我认为它覆盖了html表格行上的值。也就是说,你的程序应该只显示最后一行,你已经这样编码了,也就是说你只有一行,你正在覆盖那一行单元格,根据您的要求,您需要动态创建表结构,或者只使用Gridview或repeater控件。使用repeater控件:。此外,您的SQL命令对SQL注入攻击也是开放的。您可以使用、GridView、Repeater或asp:table以表格格式呈现多行。请参阅此处,这将起作用。然而,这并不是一个特别好的方法。使用数据绑定控件将是一个更好的选择。我同意,也就是说,这不是一个很好的方法,但当要求只是呈现表而没有数据绑定控件提供的任何其他功能时,我更喜欢简单的html控件,它肯定会获得一些小的性能。还有一个好处。如何在此处对表格进行分页?:)假设每页10条记录,您可以通过两种方式实现,1。客户端:-如果表数据没有变大,2.服务器端:-如果您对数据不确定,可能会导致表中出现大量行。基于此,您必须决定方法。
protected DataTable dt = new DataTable()
<tr>                  
    <td><asp:Literal ID="CliNox" runat="server"></asp:Literal></td>      
    <td><asp:Literal ID="CliNamex" runat="server"></asp:Literal></td>            
</tr>
foreach (DataRow dr in dt)
{
    <tr>                  
        <td><%= dr["columnName1"] %></td>    
        <td><%= dr["columnName2"] %></td>            
    </tr>
}