//cs代码 using System; using System.Collections; using System.ComponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls;namespace Document { /// <summary> /// Summary description for WebForm3. /// </summary> public class WebForm3 : System.Web.UI.Page { protected System.Web.UI.WebControls.DataList DataList1;
private void Page_Load(object sender, System.EventArgs e) { this.DataList1.DataSource=CreateNoteTable(); this.DataList1.DataBind(); } #region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); }
/// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.Load += new System.EventHandler(this.Page_Load); } #endregion public static DataTable CreateNoteTable() { DataTable dt = new DataTable(); DataColumn dc=new DataColumn("NoteID",typeof(int)); dt.Columns .Add(dc); dt.PrimaryKey =new DataColumn[]{dc}; dt.Columns .Add(new DataColumn("Title",typeof(string))); dt.Columns .Add(new DataColumn("OwningUser",typeof(string))); dt.Columns.Add(new DataColumn("Content",typeof(string))); dt.Columns.Add(new DataColumn("NoteDate",typeof(DateTime))); dt.Columns.Add(new DataColumn("male",typeof(bool))); dt.Columns.Add(new DataColumn("female",typeof(bool)));
for(int m=1;m<50;m++) { DataRow dr = dt.NewRow(); dr.ItemArray = new object[] {m,"m"+m,"z"+m,"s"+m,DateTime.Now,true,false}; dt.Rows .Add(dr); } return dt; } } }
<%@ Page language="c#" Codebehind="WebForm3.aspx.cs" AutoEventWireup="false" Inherits="Document.WebForm3" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm3</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body>
<form id="Form1" method="post" runat="server">
<ASP:DATALIST id="DataList1" BORDERWIDTH="1px" GRIDLINES="Both" BORDERSTYLE="None" CELLPADDING="3"
RUNAT="server" WIDTH="100%">
<SELECTEDITEMSTYLE FONT-BOLD="True" FORECOLOR="#000066"></SELECTEDITEMSTYLE>
<FOOTERTEMPLATE>
</FOOTERTEMPLATE>
<ITEMTEMPLATE>
<TABLE CELLPADDING="0" WIDTH="100%" BORDER="0">
<COLGROUP>
<COL WIDTH="20%">
<COL WIDTH="30%">
<COL WIDTH="20%">
<COL WIDTH="30%">
</COLGROUP>
<TR>
<TD>Title:</TD>
<TD>
<ASP:LABEL ID="Title" RUNAT="server" TEXT='<%# DataBinder.Eval(Container.DataItem, "Title") %>'>
</ASP:LABEL></TD>
<TD>
<asp:RadioButton ID="male" Runat="server" Checked='<%# DataBinder.Eval(Container.DataItem, "male") %>' Text="男">
</asp:RadioButton></TD>
<TD>
<asp:RadioButton ID="female" Runat="server" Checked='<%# DataBinder.Eval(Container.DataItem, "female") %>' Text="女">
</asp:RadioButton></TD>
</TR>
<TR>
<TD>OwningUser:</TD>
<TD>
<ASP:LABEL ID="OwningUser" RUNAT="server" TEXT='<%# DataBinder.Eval(Container.DataItem, "OwningUser") %>'>
</ASP:LABEL></TD>
<TD></TD>
<TD></TD>
</TR>
<TR>
<TD>Content:</TD>
<TD>
<ASP:LABEL ID="Content" RUNAT="server" TEXT='<%# DataBinder.Eval(Container.DataItem, "Content") %>'>
</ASP:LABEL></TD>
<TD>NoteDate:</TD>
<TD>
<ASP:LABEL ID="NoteDate" RUNAT="server" TEXT='<%# DataBinder.Eval(Container.DataItem, "NoteDate") %>'>
</ASP:LABEL></TD>
</TR>
<TR>
<TD COLSPAN="4">
<HR>
</TD>
</TR>
</TABLE>
</ITEMTEMPLATE>
<HEADERSTYLE FONT-BOLD="True" FORECOLOR="White" CSSCLASS="dg_header"></HEADERSTYLE>
<EDITITEMTEMPLATE>
</EDITITEMTEMPLATE>
</ASP:DATALIST>
</form>
</body>
</HTML>
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;namespace Document
{
/// <summary>
/// Summary description for WebForm3.
/// </summary>
public class WebForm3 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataList DataList1;
private void Page_Load(object sender, System.EventArgs e)
{
this.DataList1.DataSource=CreateNoteTable();
this.DataList1.DataBind();
} #region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load); }
#endregion public static DataTable CreateNoteTable()
{
DataTable dt = new DataTable(); DataColumn dc=new DataColumn("NoteID",typeof(int));
dt.Columns .Add(dc);
dt.PrimaryKey =new DataColumn[]{dc};
dt.Columns .Add(new DataColumn("Title",typeof(string)));
dt.Columns .Add(new DataColumn("OwningUser",typeof(string)));
dt.Columns.Add(new DataColumn("Content",typeof(string)));
dt.Columns.Add(new DataColumn("NoteDate",typeof(DateTime)));
dt.Columns.Add(new DataColumn("male",typeof(bool)));
dt.Columns.Add(new DataColumn("female",typeof(bool)));
for(int m=1;m<50;m++)
{
DataRow dr = dt.NewRow();
dr.ItemArray = new object[] {m,"m"+m,"z"+m,"s"+m,DateTime.Now,true,false};
dt.Rows .Add(dr);
}
return dt;
}
}
}
<td width="50" align="center">
<input type=radio id=RadioName name=RadioName value='<%#DataBinder.Eval(Container.DataItem,"P_ID")%>'>
</td>
</tr>
</table>
</ItemTemplate>
</asp:datalist>
<input type="hidden" id=rd runat=server/> --------------------------------------------------Label1.Text = "您的是:<font color=red>"+Request.QueryString["RadioName"].ToString() +"</font>";int s1=int.Parse(((System.Web.UI.HtmlControls.HtmlInputRadioButton )DL_Main.Items[i].FindControl("RadioName")).Value); 为什么这2条语句都取不到DATALIST控件里的值?
js脚本
<script>
{
function change(obj)
{
var Forms=Form1.elements;
for(var i=0;i<Forms.length;i++)
{
if(Forms[i].type=='radio')
{
if(Forms[i].id!=obj.id)
Forms[i].checked=false;
}
}
}
</script>
//html
<asp:datagrid id="DataGrid1" runat="server" Width="100%" AutoGenerateColumns="False" DataKeyField="uid">
<AlternatingItemStyle CssClass="dg_alter"></AlternatingItemStyle>
<ItemStyle CssClass="dg_item"></ItemStyle>
<HeaderStyle CssClass="dg_header"></HeaderStyle>
<Columns>
<asp:TemplateColumn HeaderText="选择">
<ItemTemplate>
<INPUT id="rbSelect" type="radio" runat="server" onclick="change(this)">
<asp:Label id=lblID runat="server" Text='<%# DataBinder.Eval(Container.DataItem,"uid") %>' Visible="False">
</asp:Label>
</ItemTemplate>
</DataGrid>//cs
private void btnOK_Click(object sender, System.EventArgs e)
{
try
{
int BookID=Convert.ToInt32 (Request.QueryString ["id"]);
int UserID=0;
for(int i=0;i<this.DataGrid1 .Items .Count ;i++)
{
if(this.DataGrid1 .Items [i].ItemType==ListItemType.Item ||this.DataGrid1 .Items [i].ItemType ==ListItemType.AlternatingItem)
{
HtmlInputRadioButton _rbSelect=(HtmlInputRadioButton)this.DataGrid1 .Items [i].FindControl ("rbSelect");
if(_rbSelect.Checked)
UserID=Convert.ToInt32 (((Label)this.DataGrid1 .Items [i].FindControl ("lblID")).Text);
}
}
if(UserID!=0)
{
int BorrowID=(int)SqlHelper.ExecuteScalar(DataConnection.GetConnection (),"xie_borrow_book",BookID,UserID);
if(BorrowID!=0)
{
Response.Write ("<script>alert('成功借出,借阅编号:"+BorrowID.ToString ()+",请记住这次的借阅编号。')</script>");
}
else
{
if(BorrowID==0)
Response.Write ("<script>alert('该用户的借书数量已经用完!')</script>");
else
Response.Write ("<script>alert('该用户的预存款不足!')</script>"); }
Response.Write ("<script>window.location.href('book_borrow.aspx')</script>");
}
else
{
Response.Write ("<script>alert('请选择用户!')</script>");
}
}
catch(Exception ex)
{
WebBase.InsertLog (ex.Message .ToString (),"SelectUser",86);
Response.Write ("<script>alert('服务器忙,请稍后再试!')</script>");
}
}