C# 如何在中继器中控制复选框
我是这个网站的新手。我需要asp.net C中的帮助。在我的示例中,我有一个数据列表控件,我可以显示一些书籍记录,如书籍标题、书籍作者、出版商和书籍图像。因此,当我从这些记录中购买一本或两本书时,我会选中一个复选框。选中复选框后,我点击一个按钮,通过它我可以在中继器中获得关于所选记录的信息。所以我的问题是,当我点击按钮时,我如何获得所选控件复选框和信息显示在中继器中 多谢各位C# 如何在中继器中控制复选框,c#,asp.net,C#,Asp.net,我是这个网站的新手。我需要asp.net C中的帮助。在我的示例中,我有一个数据列表控件,我可以显示一些书籍记录,如书籍标题、书籍作者、出版商和书籍图像。因此,当我从这些记录中购买一本或两本书时,我会选中一个复选框。选中复选框后,我点击一个按钮,通过它我可以在中继器中获得关于所选记录的信息。所以我的问题是,当我点击按钮时,我如何获得所选控件复选框和信息显示在中继器中 多谢各位 HD这里是一个完整的示例,介绍如何使用带有复选框的中继器。 项目ID存储在隐藏字段中,用于检查用户选择时的其他信息 此示
HD这里是一个完整的示例,介绍如何使用带有复选框的中继器。 项目ID存储在隐藏字段中,用于检查用户选择时的其他信息 此示例可能与您的代码不匹配,因为您没有提供任何示例
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html>
<html lang="en">
<head>
<title>Repeater Example</title>
<script language="C#" runat="server">
public class PositionData
{
private int id;
private string name;
private string _data;
private bool selected;
public PositionData(int id, string name, string data)
{
this.name = name;
this._data = data;
}
public int Id
{
get { return id; }
}
public string Name
{
get { return name; }
}
public string data
{
get { return _data; }
}
public bool Selected
{
get { return selected; }
}
}
void Page_Load(Object Sender, EventArgs e)
{
if (!IsPostBack)
{
ArrayList values = new ArrayList();
values.Add(new PositionData(1, "Prod1", "Info1"));
values.Add(new PositionData(2, "Prod2", "Info1"));
values.Add(new PositionData(3, "Prod3", "Info1"));
Repeater1.DataSource = values;
Repeater1.DataBind();
}
if (IsPostBack)
{
foreach (RepeaterItem i in Repeater1.Items)
{
//Retrieve the state of the CheckBox
CheckBox cb = (CheckBox)i.FindControl("selectUser");
HtmlInputHidden info = (HtmlInputHidden)i.FindControl("fieldName");
String itemInfo = info.Value;
if (cb.Checked)
{
// do whatever you want with selected item
// having it's ID
}
}
}
}
private void Repeater1_OnItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
var myHidden = (HtmlInputHidden)e.Item.FindControl("fieldName");
myHidden.Value = ((PositionData)e.Item.DataItem).Id.ToString();
}
}
</script>
</head>
<body>
<h3>
Repeater Example</h3>
<form id="form1" runat="server">
<b>Repeater1:</b>
<br />
<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_OnItemDataBound">
<HeaderTemplate>
<table border="1">
<tr>
<td>
<b>Select this one</b>
</td>
<td>
<b>Name</b>
</td>
<td>
<b>Data</b>
</td>
</tr>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
Select
<asp:CheckBox ID="selectUser" runat="server" />
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "name") %>
</td>
<td>
<%# DataBinder.Eval(Container.DataItem, "data") %>
<input id="fieldName" runat="server" type="hidden" />
</td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
<br />
<button id="submitButton" runat="server">Submit!</button>
</form>
</body>
</html>
欢迎来到stackoverflow,请抽出一分钟阅读,为了得到读者的良好响应,您需要提供有关您的问题的更多信息,代码摘录将是一个良好的开端..嗯..好的thankyou@YuliamChandra你能帮我解决这个问题吗。我编辑了这个问题,希望你能理解我的观点。你能像这样把转发器的代码摘录和你在aspx页面上的复选框放在这里吗