本例实现通过RadioButton对Datalist控件进行单选。你可以参考下面演示。
准备好一个星座对象,并定义好一个泛型List来存储每一个星座名称。
复制代码 代码如下:
Constelltion.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
/// <summary>
/// Summary description for Constellation
/// </summary>
namespace Insus.NET
{
public class Constellation
{
private int _ID;
private string _Name;
public int ID
{
get { return _ID; }
set { _ID = value; }
}
public string Name
{
get { return _Name; }
set { _Name = value; }
}
public Constellation()
{
//
// TODO: Add constructor logic here
//
}
public Constellation(int id, string name)
{
this._ID = id;
this._Name = name;
}
public List<Constellation> GetConstellation()
{
List<Constellation> constellation = new List<Constellation>();
Constellation c = new Constellation(1, ” 白羊座”);
constellation.Add(c);
c = new Constellation(2, “金牛座”);
constellation.Add(c);
c = new Constellation(3, “双子座”);
constellation.Add(c);
c = new Constellation(4, “巨蟹座”);
constellation.Add(c);
c = new Constellation(5, “狮子座”);
constellation.Add(c);
c = new Constellation(6, “处女座”);
constellation.Add(c);
c = new Constellation(7, “天秤座 “);
constellation.Add(c);
c = new Constellation(8, “天蝎座”);
constellation.Add(c);
c = new Constellation(9, “射手座”);
constellation.Add(c);
c = new Constellation(10, “摩羯座”);
constellation.Add(c);
c = new Constellation(11, “水瓶座”);
constellation.Add(c);
c = new Constellation(12, “双鱼座”);
constellation.Add(c);
return constellation;
}
}
}
在.aspx拉一个DataList控件,把RadioButton置于DataList的ItemTemplate模版内。
复制代码 代码如下:
<asp:DataList ID=”DataListConstellation” runat=”server” Width=”100″ CellPadding=”0″ CellSpacing=”0″>
<ItemStyle BorderWidth=”1″ />
<ItemTemplate>
<table>
<tr>
<td>
<asp:RadioButton ID=”RadioButtonSelect” runat=”server” onclick=”SelectedRadio(this);” /></td>
<td><%# Eval(“ID”) %></td>
<td><%# Eval(“Name”) %></td>
</tr>
</table>
</ItemTemplate>
</asp:DataList>
在.aspx.cs内为DataList控件绑定数据:
复制代码 代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Insus.NET;
public partial class _Default : System.Web.UI.Page
{
Constellation objConstellation = new Constellation();
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
Data_Binding();
}
private void Data_Binding()
{
this.DataListConstellation.DataSource = objConstellation.GetConstellation();
this.DataListConstellation.DataBind();
}
}
最后,我们写一段Javascript来实现onclick事件
复制代码 代码如下:
<script type=”text/javascript”>
function SelectedRadio(rb) {
var gv = document.getElementById(“<%=DataListConstellation.ClientID%>”);
var rbs = gv.getElementsByTagName(“input”);
var row = rb.parentNode.parentNode;
for (var i = 0; i < rbs.length; i++) {
if (rbs[i].type == “radio”) {
if (rbs[i].checked && rbs[i] != rb) {
rbs[i].checked = false;
break;
}
}
}
}
</script>
您可能感兴趣的文章:
- 获取DataList控件的主键和索引实用图解
- 动态加载用户控件至DataList并为用户控件赋值实例演示
- Datalist控件使用存储过程来分页实现代码
- asp.net datalist 用法
- DataList中TextBox onfocus调用后台void静态方法及获取相应行数
声明:本站(华域联盟www.cnhackhy.com)所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)