C# 获取下拉列表的索引值在连接的数据库中始终存储为0。此外,我在html源代码中启用了自动回发
有包括我的C代码。请帮助我完成任务C# 获取下拉列表的索引值在连接的数据库中始终存储为0。此外,我在html源代码中启用了自动回发,c#,asp.net,C#,Asp.net,有包括我的C代码。请帮助我完成任务 namespace WebApplication1 { public partial class Project1 : System.Web.UI.Page { OracleConnection con = new OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["TEST"].ToString()); st
namespace WebApplication1
{
public partial class Project1 : System.Web.UI.Page
{
OracleConnection con = new OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["TEST"].ToString());
string str;
int compId;
protected void Page_Load(object sender, EventArgs e)
{
// calProjectDate.Visible = false;
if (!this.IsPostBack)
{
OracleConnection con = new OracleConnection(System.Configuration.ConfigurationManager.ConnectionStrings["TEST"].ToString());
con.Open();
OracleCommand cmd = con.CreateCommand();
cmd.CommandText = " Select * FROM COMPANY";
cmd.Connection = con;
DataTable dt = new DataTable();
dt.Load(cmd.ExecuteReader());
ddlCompanyName.DataSource = dt;
ddlCompanyName.DataTextField = "COMPANYNAME";
ddlCompanyName.DataValueField = "COMPANYID";
ddlCompanyName.DataBind();
ddlCompanyName.Items.Insert(0, new ListItem("--Select Name--"));
con.Close();
}
}
protected void btnShowCalendar_Click(object sender, ImageClickEventArgs e)
{
calProjectDate.Visible = true;
}
protected void calDateofBirth_SelectionChanged(object sender, EventArgs e)
{
txtProjectDate.Text = calProjectDate.SelectedDate.ToShortDateString();
calProjectDate.Visible = false;
}
protected void calProjectDate_SelectionChanged(object sender, EventArgs e)
{
txtProjectDate.Text = calProjectDate.SelectedDate.ToShortDateString();
}
protected void btnSave_Click(object sender, EventArgs e)
{
try
{
con.Open();
OracleCommand cmd = con.CreateCommand();
str = ddlCompanyName.SelectedItem.Text;
//int value = ddlCompanyName.DataValueField.OfType.s;
// int selectedradioValue = this.RblGender.TabIndex;
// int selectedCompanyValue = this.ddlCompanyName.TabIndex;
cmd.CommandText = "INSERT INTO CMPPOJECT(PROJECTNAME,DESCRIPTION,COMPANY,WEBSITEURL,COMPLETEDIN,STARTEDIN)VALUES('" + txtProjectName.Text + "','" + txtDescription.Text + "','" + compId + "','" + txtWebsiteUrl.Text + "','" + cbProjectCompleted.Text + "','" + txtProjectDate.Text + "')";
cmd.ExecuteNonQuery();
}
catch(Exception ex)
{
Response.Write("<script>alert('Sorry,some error occured! Please try again!')</script>");
}
finally
{
con.Close();
Response.Write("is it coming");
}
}
protected void ddlCompanyName_SelectedIndexChanged(object sender, EventArgs e)
{
compId = ddlCompanyName.SelectedIndex;
}
}
}
compId始终为0,因为每次有新的回发请求时,compId都会初始化,默认值为0
您可以直接使用dropdownlist ddlCompanyName的值。SelectedValue:
为什么使用函数ddlCompanyName\u SelectedIndexChanged?compId=ddlCompanyName.SelectedIndex;这条线。。。。你想得到什么?你想得到下拉索引吗?你只要去掉selectedIndexchanged事件并尝试运行代码Thanku…非常感谢..它起作用了。。。
cmd.CommandText = "INSERT INTO CMPPOJECT(PROJECTNAME,DESCRIPTION,COMPANY,WEBSITEURL,COMPLETEDIN,STARTEDIN)VALUES('" + txtProjectName.Text + "','" + txtDescription.Text + "','" + ddlCompanyName.SelectedValue + "','" + txtWebsiteUrl.Text + "','" + cbProjectCompleted.Text + "','" + txtProjectDate.Text + "')";