PDA

View Full Version : سوال: مشکل در DropDown های به هم وابسته؟



پیام حیاتی
دوشنبه 20 مهر 1394, 12:24 عصر
سلام
این جداول استان و شهر هستند :

135961

135962

این کدهای من :

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.IO;


public partial class _Default : System.Web.UI.Page
{
SqlConnection con = new SqlConnection("Data Source=localhost; Initial Catalog=Drop; Integrated Security=TRUE ");
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
con.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from Ostan", con);
DataSet ds = new DataSet();
da.Fill(ds, "Temp");
DropOstan.DataSource = ds;
DropOstan.Items.Clear();
DropOstan.Items.Add("-- انتخاب کنید --");
DropOstan.DataTextField = "o_name";
DropOstan.DataValueField = "o_id";
DropOstan.DataBind();
con.Close();
}
}
protected void DropCity_SelectedIndexChanged(object sender, EventArgs e)
{


}
protected void DropOstan_SelectedIndexChanged(object sender, EventArgs e)
{
con.Open();
SqlDataAdapter da = new SqlDataAdapter("select c_name from City where c_o_id= '" + DropOstan.SelectedItem.Value + "' ", con);
DataSet ds = new DataSet();
da.Fill(ds, "Temp");
DropCity.DataSource = ds;
DropOstan.DataTextField = "c_name";
DropOstan.DataValueField = "c_id";
DropCity.DataBind();
con.Close();
}
}



نتیجه در خروجی :

135963

notlikeothers
سه شنبه 21 مهر 1394, 08:23 صبح
درود .شما خاصیت auto postbackدراپ استان رو true کردین؟؟

malloc
سه شنبه 21 مهر 1394, 08:40 صبح
تو سلکت دومت چرا c_id رو نیاوردی ؟

پیام حیاتی
سه شنبه 21 مهر 1394, 12:11 عصر
درود .شما خاصیت auto postbackدراپ استان رو true کردین؟؟
بله true هست.

پیام حیاتی
سه شنبه 21 مهر 1394, 12:19 عصر
تو سلکت دومت چرا c_id رو نیاوردی ؟
اضافه کردم تغییری نکرد.

mazoolagh
جمعه 24 مهر 1394, 08:06 صبح
مگر o_id عدد نیست؟

پس چرا DropOstan.SelectedItem.Value رو درون کوتیشین گذاشتین؟

پیام حیاتی
جمعه 24 مهر 1394, 10:35 صبح
مگر o_id عدد نیست؟

پس چرا DropOstan.SelectedItem.Value رو درون کوتیشین گذاشتین؟
SelectedIndex قرار دادم فرقی نکرد.

aslan
جمعه 24 مهر 1394, 10:59 صبح
DataSet ds = new DataSet();
da.Fill(ds, "Temp");
DropCity.DataSource = ds;
DropOstan.DataTextField = "c_name";
DropOstan.DataValueField = "c_id";
DropCity.DataBind();
con.Close();

فکر کنم در این کدها باید
DropOstan را به DropCity تغییر دهید

پیام حیاتی
جمعه 24 مهر 1394, 20:38 عصر
ممنون از دقتتون.
کدها رو در مجموع به شکل زیر قرار دادم درست شد :


using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.SqlClient;
using System.Data;
using System.IO;


public partial class _Default : System.Web.UI.Page
{
SqlConnection con = new SqlConnection("Data Source=localhost; Initial Catalog=Drop; Integrated Security=TRUE ");
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
con.Open();
SqlDataAdapter da = new SqlDataAdapter("select * from Ostan", con);
DataSet ds = new DataSet();
da.Fill(ds, "Temp");
DropOstan.DataSource = ds;
DropOstan.DataTextField = "o_name";
DropOstan.DataValueField = "o_id";
DropOstan.DataBind();
con.Close();
}

}
protected void DropCity_SelectedIndexChanged(object sender, EventArgs e)
{


}
protected void DropOstan_SelectedIndexChanged(object sender, EventArgs e)
{
con.Open();
SqlDataAdapter da1 = new SqlDataAdapter("select * from City where c_o_id= '" + DropOstan.SelectedItem.Value + "' ", con);
DataSet ds1 = new DataSet();
da1.Fill(ds1, "Temp");
DropCity.DataSource = ds1;
DropCity.DataTextField = "c_name";
DropCity.DataValueField = "c_id";
DropCity.DataBind();
con.Close();
}
}