DataList嵌套datalist的问题

jiayun1 2009-11-11 02:03:00
请大虾帮忙吧
<asp:DataList ID="DataList1" runat="server">
<ItemTemplate>
<asp:DataList ID="DataList2" runat="server">
<ItemTemplate>
原始值<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
目标值<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
</ItemTemplate>
</asp:DataList>
</ItemTemplate>
</asp:DataList>

就是DataList1 中嵌套了DataList2,DataList2里面包含两个文本框。
现在需要取两个文本框的值
可是我不知道怎么写循环才可以取值呢。

我要将取到的值放到DataTable。
...全文
153 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
jiayun1 2009-12-01
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 gongsun 的回复:]
引用 8 楼 jiayun1 的回复:
补充一下:不是绑定后取值。在外面有一个button 确定按钮。

我要的是用户填完,一点确定,然后取值。


在 开头 定义个 datatable啊。

然后 取一个 就装一个啥。
[/Quote]

有用
gongsun 2009-11-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 jiayun1 的回复:]
补充一下:不是绑定后取值。在外面有一个button 确定按钮。

我要的是用户填完,一点确定,然后取值。
[/Quote]

在 开头 定义个 datatable啊。

然后 取一个 就装一个啥。
jiayun1 2009-11-11
  • 打赏
  • 举报
回复
补充一下:不是绑定后取值。在外面有一个button 确定按钮。

我要的是用户填完,一点确定,然后取值。
lizhengdao1314 2009-11-11
  • 打赏
  • 举报
回复
又是datalist嵌套
protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
DataList dataList = (DataList)e.Item.FindControl("DataList2");
dataList.FindControl("Textbox1");
dataList.FindControl("Textbox2");
}
}
  • 打赏
  • 举报
回复
给你的DataList2添加ItemDataBound事件,然后
请看事件里的代码

protected void ddl_ItemDataBound(object sender, DataListItemEventArgs e)
{
TextBox TextBox1 = e.Item.FindControl("TextBox1") as TextBox;
TextBox TextBox2 = e.Item.FindControl("TextBox2") as TextBox;

DataTable dt = new DataTable();
dt.Columns.Add("Text1");
dt.Columns.Add("Text2");
DataRow dr = dt.NewRow();
dr["Text1"] = TextBox1.Text;
dr["Text2"] = TextBox2.Text;
dt.Rows.Add(dr);
}
若若雨 2009-11-11
  • 打赏
  • 举报
回复
问下 :在什么情况下去 两个textbox 的值
gongsun 2009-11-11
  • 打赏
  • 举报
回复

<asp:DataList ID="DataList1" DataKeyField="datalist2中的索引ID" runat="server">
<ItemTemplate>
<asp:DataList ID="DataList2" runat="server">
<ItemTemplate>
原始值 <asp:TextBox ID="TextBox1" runat="server"> </asp:TextBox>
目标值 <asp:TextBox ID="TextBox2" runat="server"> </asp:TextBox>
</ItemTemplate>
</asp:DataList>
</ItemTemplate>
</asp:DataList>




for (int i = 0; i < Datalist1.Items.Count; i++)
{
if (Datalist1.Items[i].ItemType == ListItemType.Item | Datalist1.Items[i].ItemType == ListItemType.AlternatingItem)
{
string theid = Datalist1.DataKeys[i].ToString();
//这里取到了 你所需datalist2中 列表查询的id
DataList Datalist2 = (DataList)Datalist2.Items[i].FindControl("Dtalist2");
如此 在循环取吧... 不知道你这个是什么东西,感觉设计有问题。
jiayun1 2009-11-11
  • 打赏
  • 举报
回复
功能很复杂,一时办会也说不清。但是要求是嵌套的。

lbcleo 2009-11-11
  • 打赏
  • 举报
回复
帮顶一下,顺便问一下你循环句子都没有啊
liujintaozyc 2009-11-11
  • 打赏
  • 举报
回复
你想实现什么功能啊 干嘛都要嵌套
如果要真是嵌套的话 你可以在外面的datalist中有个findcontrol方法 把id写入就行
一般不用嵌套 自己在想下思路
那样的话很慢的

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧