Asp.net 中动态生成table,在table中动态添加行,在行中填入数据,数据如何全部存入

Asp.net 中动态生成table,在table中动态添加行,在行中填入数据,数据如何全部存入,第1张

1、后台代码

public string GetString() //自定义方法,供前台调用

{

StringBuilder strBuilder = new StringBuilder() //用StringBuilder接受所有拼接的字符串,因为StringBuilder效率比拼接字符串效率高,当然以下代码还需要你自己去完善,需要完整代码的话,继续追问

strBuilder.AppendLine("<table>")

//接下来取出数据

foreach(dataRow row in datas) //遍历取出数据放到tr中

{

strBuilder.AppendLine("<tr><td>i</td><td>d["date"]</td><td>d["goodsCompany"]</td>.....</tr>.")

i++

}

strBuilder.AppendLine("</table>")

return strBuilder.ToString()//得到strBuilder返给GetString()这个自定义方法

}

2、前台调用

找一块区域,调用GetString()

<%=GetString()%>//这样就得到了,哈哈,完毕,下面介绍其他的两种方法

3、如果需要异步调用的话,就需要ajax配合json技术了

4、想偷懒也不注重效率的话,就用数据绑定控件吧,比如Reapter

ps:有不懂的继续追问

可用Session来实现。我现在在做的一个物流系统就是这样来增加车辆的发车时间的。

首先在Page_Load里初始化 Session["str"] = ""

在该按钮的单击事件里写

Session["str"] = String.Concat(Session["str"].ToString(),"<tr><td><input type=\"text\" name=\"(这儿自己取个名,方便到时取里面的值。用Request["取的名字"].ToString 会自动取得以逗号格式隔开的textbox里的值。可自己试着做。)\" style=\"width: 156px\"></td></tr>")

(String.Concat(string1,string2)方法用来连接string1和string2两个字符串,即每次都在现有的一行后面新加一行。)

然后在页面的前台aspx文件里用<%=Session["str"]%>来显示这些行,注意将它放在你的<table>和</table>中间,就可以往该表格中加入行了。

要有命名规则也可以的。它们也可以都用一样的名字,比如说都为aa ,则name=\"aa\",这样可以用Request["aa"]将一批值取过来。或者你想命名为aa0,aa1,aa2……,可以定义一个Session["i"]=0,然后在前面那段代码的name=\"aa\"+Session["i"].ToString() Session["i"]=Session["i"]+1这样就可以了。

建议这种 *** 作方式还是用前台脚本处理好一些,可以用异步的方式返回Json串,当然提交时也是通过异步的方式完成

<head runat="server">

<title></title>

<script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>

<script type="text/javascript">

function AddHtml() {

var strHtml = "<tr><td><input id='Text1' type='text' /></td><td><input id='Text2' type='text' /></td></tr>"

$("#tabTable").append(strHtml)

}

</script>

</head>

<body>

<form id="form1" runat="server">

<div>

<input id="Button1" type="button" value="Add" onclick="AddHtml()" />

<br />

<table id="tabTable">

<tr>

<td>姓名</td><td>出生日期</td>

</tr>

</table>

</div>

</form>

</body>

</html>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11565146.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存