读书人

为什么传递内容不变,该如何处理

发布时间: 2012-01-05 22:36:54 作者: rapoo

为什么传递内容不变
我用了一个droplist想根据这个里面的内容打开页面,可是不管我选哪个,里面的内容总是原来那个 <%@ Page Language= "C# "%>
<%@ Import Namespace= "System.Data.OleDb "%>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN " "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
<script runat= "server ">
void Page_Load(Object sender, EventArgs e)
{
OleDbConnection condatabase;
OleDbCommand cmdSelectdatabase;
OleDbDataReader dtrdatabase;
// Retrieve records from database
condatabase = new OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=E:\\powerflow\\loadflow.mdb ");
condatabase.Open();
cmdSelectdatabase = new OleDbCommand( "Select * from main ", condatabase);
dtrdatabase = cmdSelectdatabase.ExecuteReader();

// Bind to dropdownlist
droplist.DataSource = dtrdatabase;
droplist.DataTextField = "TYPE ";
droplist.DataBind();


dtrdatabase.Close();
condatabase.Close();
}
void Search_Click(object sender, System.EventArgs e)
{
OleDbConnection condatabase;
string strSelect;
OleDbCommand cmdSelect;

condatabase = new OleDbConnection( "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA Source=E:\\powerflow\\loadflow.mdb ");


strSelect = "Select SIGN From main Where TYPE=@type ";
cmdSelect = new OleDbCommand(strSelect, condatabase);

cmdSelect.Parameters.Add( "@type ", droplist.SelectedValue);


condatabase.Open();

if ((int)cmdSelect.ExecuteScalar()!=0)
{
Response.Redirect( "node1.aspx?rr= " + droplist.SelectedValue);


}
else
{
Response.Redirect( "Branch.aspx?rr= "+droplist.SelectedValue);
}
condatabase.Close();
}

</script>
<html xmlns= "http://www.w3.org/1999/xhtml " >
<head runat= "server ">
<title> 无标题页 </title>
</head>
<body>
<form id= "form1 " runat= "server " >
<div>
<asp:DropDownList
ID= "droplist "
Runat= "Server " />
<asp:Button ID= "Button1 "
Text= "查询 "
Runat= "Server " OnClick= "Search_Click "/>

</div>
</form>
</body>
</html>

[解决办法]
Page_Load里要加if(!Page.IsPostBack)判断

读书人网 >asp.net

热点推荐