运行的时候当我选一个的时候可以显示,而在运行第二个的时候出现错误,不知道为什么,看代码也没有什么地方错误,或许是有一些细节没有注意到,查了好久也没有查到.谢谢各位帮助啊 代码是这样的.
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="true" Inherits="thirdfile.WebForm1" %>
<%@ import namespace="System.Data"%>
<%@ import namespace="System.Data.SqlClient"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm3</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:label id="Label1" style="Z-INDEX: 101; LEFT: 56px; POSITION: absolute; TOP: 72px" runat="server">Using Radio Buttons</asp:label>
<asp:checkboxlist id="cbx" style="Z-INDEX: 102; LEFT: 56px; POSITION: absolute; TOP: 128px" runat="server"
RepeatColumns="3" AutoPostBack="True" OnSelectedIndexChanged="subListChange"></asp:checkboxlist>
<asp:DataGrid id="dg" style="Z-INDEX: 103; LEFT: 64px; POSITION: absolute; TOP: 216px" runat="server"></asp:DataGrid></form>
<script language="C#" runat="server">
private void Page_Load(object sender,System.EventArgs e)
{
if(!IsPostBack)
{
string str_conn="Data Source=YUCHENGGANG;Initial Catalog=Northwind;Integrated Security=SSPI";
SqlConnection conn=new SqlConnection(str_conn);
string sql_str="Select LastName,EmployeeID from Employees order by LastName;";
SqlCommand comm=new SqlCommand(sql_str,conn);
conn.Open();
cbx.DataSource=comm.ExecuteReader();
cbx.DataValueField="EmployeeID";
cbx.DataTextField="LastName";
cbx.DataBind();
conn.Close();
}
}private void subListChange(object sender,System.EventArgs e)
{
Response.Write("subListChange triggered:");
string strWhereClause="";
foreach(ListItem liThisOne in cbx.Items)
{
if(liThisOne.Selected)
{
strWhereClause+="EmployeeID="+liThisOne.Value+"or";
}
}
Response.Write("strWhereClause=<br/>"+strWhereClause+"<hr/>");
if(strWhereClause.Length>0)
{
dg.Visible=true;
string str=strWhereClause.Substring(0,strWhereClause.Length-4);
strWhereClause="where"+str;
string str_conn="Data Source=YUCHENGGANG;Initial Catalog=Northwind;Integrated Security=SSPI";
SqlConnection conn=new SqlConnection(str_conn);
string sql_str="Select TitleOfCourtesy,FirstName,LastName,Country,Region,City,Notes from Employees "+strWhereClause;
SqlCommand comm=new SqlCommand(sql_str,conn);
Response.Write("strSQLForGrid=<br/>"+sql_str+"<hr/>");
conn.Open();
dg.DataSource=comm.ExecuteReader();
dg.DataBind();
conn.Close();
}
else
dg.Visible=false;
}
</script>
</body>
</HTML>
<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="true" Inherits="thirdfile.WebForm1" %>
<%@ import namespace="System.Data"%>
<%@ import namespace="System.Data.SqlClient"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>WebForm3</title>
<meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
<meta content="C#" name="CODE_LANGUAGE">
<meta content="JavaScript" name="vs_defaultClientScript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" method="post" runat="server">
<asp:label id="Label1" style="Z-INDEX: 101; LEFT: 56px; POSITION: absolute; TOP: 72px" runat="server">Using Radio Buttons</asp:label>
<asp:checkboxlist id="cbx" style="Z-INDEX: 102; LEFT: 56px; POSITION: absolute; TOP: 128px" runat="server"
RepeatColumns="3" AutoPostBack="True" OnSelectedIndexChanged="subListChange"></asp:checkboxlist>
<asp:DataGrid id="dg" style="Z-INDEX: 103; LEFT: 64px; POSITION: absolute; TOP: 216px" runat="server"></asp:DataGrid></form>
<script language="C#" runat="server">
private void Page_Load(object sender,System.EventArgs e)
{
if(!IsPostBack)
{
string str_conn="Data Source=YUCHENGGANG;Initial Catalog=Northwind;Integrated Security=SSPI";
SqlConnection conn=new SqlConnection(str_conn);
string sql_str="Select LastName,EmployeeID from Employees order by LastName;";
SqlCommand comm=new SqlCommand(sql_str,conn);
conn.Open();
cbx.DataSource=comm.ExecuteReader();
cbx.DataValueField="EmployeeID";
cbx.DataTextField="LastName";
cbx.DataBind();
conn.Close();
}
}private void subListChange(object sender,System.EventArgs e)
{
Response.Write("subListChange triggered:");
string strWhereClause="";
foreach(ListItem liThisOne in cbx.Items)
{
if(liThisOne.Selected)
{
strWhereClause+="EmployeeID="+liThisOne.Value+"or";
}
}
Response.Write("strWhereClause=<br/>"+strWhereClause+"<hr/>");
if(strWhereClause.Length>0)
{
dg.Visible=true;
string str=strWhereClause.Substring(0,strWhereClause.Length-4);
strWhereClause="where"+str;
string str_conn="Data Source=YUCHENGGANG;Initial Catalog=Northwind;Integrated Security=SSPI";
SqlConnection conn=new SqlConnection(str_conn);
string sql_str="Select TitleOfCourtesy,FirstName,LastName,Country,Region,City,Notes from Employees "+strWhereClause;
SqlCommand comm=new SqlCommand(sql_str,conn);
Response.Write("strSQLForGrid=<br/>"+sql_str+"<hr/>");
conn.Open();
dg.DataSource=comm.ExecuteReader();
dg.DataBind();
conn.Close();
}
else
dg.Visible=false;
}
</script>
</body>
</HTML>
解决方案 »
- [玻璃鱼V]关于.net网站发布的问题
- 都百度一天了!我说大神你就教教我这个菜鸟吧,很菜的一个问题,麻烦了!
- Webb.WAVE.Controls.Upload组件使用中的问题
- 高分在线等,关于一个Page.IsPostBack 的问题....
- NET裡面用什麼可以代替html裡面的div呢 panle 可以嗎
- ■■■学会Uml要多久?来者有分
- 50f分求助怎么制作安装程序?
- 为什么用Application通机再现人数不准确呢
- 救命问题,关于返回sqldatareader后要关闭connection的问题
- 高分求教各位:如何在DataSet中的两个表格进行二次查询
- 用。NET发信件,装什么组件好?或者是邮件服务器软件
- 用web服务器或html创建的用户自定义控件*.ascx如何在.cs文件中引用?
对调试不是很熟练,只会简单的调式,跟踪strWhereClause的时候发现运行后的值之间没有空格
加上空格却是错误的!第二次运行的值是"whereEmployeeID=8orEmployeeID",怎么看怎么不对,却不知道怎么改
改为 strWhereClause=" where "+str
把 strWhereClause+="EmployeeID="+liThisOne.Value+"or";
改为 strWhereClause+=" EmployeeID= "+liThisOne.Value+" or ";