为了账号安全,请及时绑定邮箱和手机立即绑定

ScriptManager.RegisterStartupScript 仅在 foreach

ScriptManager.RegisterStartupScript 仅在 foreach

C#
慕森卡 2022-06-18 17:37:23
我有一个数据表,其中包含我从数据库中获得的记录。当页面加载时,我想浏览每条记录并将值提交给 JavaScript 函数,该函数将它们显示到页面上,但是,它仅适用于表中的第一条记录。如果有人有办法解决这个问题或有更好的方法来做我想做的事情,我们将不胜感激。我背后的代码:foreach(DataRow row in tlds.Rows) {    TLDid = Convert.ToInt32(row["tldID"]);    tldName = row["tldName"].ToString();    date = row["releaseDate"].ToString();    price = Convert.ToDouble(row["price"]);    tags = row["tags"].ToString();    ScriptManager.RegisterStartupScript(this, this.GetType(), "tld", "addTLD('" + TLDid + "','" + tldName + "','" + date + "','" + price + "')", true);} 我的js函数:function addTLD(tldID, tldName, releaseDate, price) {    $('<tr><td>' + tldName + '</td><td>' + releaseDate + '</td><td>' + price + '</tr>').insertAfter('tr');}
查看完整描述

1 回答

?
红颜莎娜

TA贡献1842条经验 获得超12个赞

您可以使用 ASP.NET 服务器端表格控件,然后动态添加行并为每一行添加所需的单元格,如下面的代码


ASPX


<asp:Table ID="myTable" runat="server" Width="100%"> 

</asp:Table>

ASPX.CS


    foreach (DataRow row in tlds.Rows)

                {

                    date = row["releaseDate"].ToString();

                    price = Convert.ToDouble(row["price"]);

                    tags = row["tags"].ToString();


                     TableRow row = new TableRow();


                     TableCell TLIdCell= new TableCell();

                     TLIdCell.Text = Convert.ToInt32(row["tldID"]);

                     row.Cells.Add(TLIdCell);


                      TableCell tldNameCell = new TableCell();

                      tldNameCell .Text = Convert.ToString(row["tldName"]);

                      row.Cells.Add(tldNameCell);


                     //Similarly add code for date, price and tags cells


                      // Finally add row to table rows collection

                      myTable.Rows.Add(row);

                } 


查看完整回答
反对 回复 2022-06-18
  • 1 回答
  • 0 关注
  • 121 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信