Get selected value from a dropdownlist asp.net
I know this is a silly question bu开发者_如何学Pythont i can't find out how to get the selected value from my dropdownlist :(
Init the dropdownlist:
SqlCommand command = new SqlCommand("SelectAllUserID", connection);
command.CommandType = CommandType.StoredProcedure;
SqlDataReader sqlReader = command.ExecuteReader();
if (sqlReader.HasRows)
{
TProjectMID.DataSource = sqlReader;
TProjectMID.DataTextField = "UserID";
TProjectMID.DataValueField = "UserID";
TProjectMID.DataBind();
}
Try to get the value of drop down list:
String a;
a = TProjectMID.SelectedValue;
a = TProjectMID.SelectedItem.Value;
a = TProjectMID.DataValueField;
a = TProjectMID.Text;
It didn't return the value I chose, it keeps returning the default value when the dropdownlist appear ??
Can anybody tell me what I did wrong ? Thank you
You need to make sure you are not re-loading the DDL everytime the page loads, in other words only fill it on the initial page load, and if it is a page postback, don't re-load it so the value will be retained.
Something like this should work:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack) {
SqlCommand command = new SqlCommand("SelectAllUserID", connection);
command.CommandType = CommandType.StoredProcedure;
SqlDataReader sqlReader = command.ExecuteReader();
if (sqlReader.HasRows)
{
TProjectMID.DataSource = sqlReader;
TProjectMID.DataTextField = "UserID";
TProjectMID.DataValueField = "UserID";
TProjectMID.DataBind();
}
}
}
and then in your code to retrieve the value, this should work:
string a = TProjectMID.SelectedValue;
have you made sure that you have set a value on the options for the value to be returned?
something like this
<select>
<option value="I am foo">foo</option>
<option value="I am bar">bar</option>
</select>
精彩评论