用Ajax寫的省市聯動,添加地址的時候預設的省市都顯示,- -請選擇- - 但是修改的時候如何讓省市下拉式功能表裡預設的選中,地址裡的省市?[下拉式功能表裡的省,是直接從資料庫拿出來儲存在一個陣列變數裡,把變數付給下拉框]
js代碼:
html代碼:
php檔案:
require_once (dirname(__FILE__) . "/../include/common.inc.php");
require_once(DEDEINC.'/dedesql.class.php');
//伺服器端
//告訴瀏覽器返回的資料格式是xml格式
header("Content-Type: text/xml;charset=utf-8");
//告訴瀏覽器不要快取資料
header("Cache-Control: no-cache");
//接收使用者選擇省的名字
$province=$_POST['province'];
$city = array();
$dsql->SetQuery("SELECT * FROM area WHERE reid=$province");
$dsql->Execute();
$i = 0 ;
while($row=$dsql->GetArray())
{
$city[] = $row;
$i++;
}
unset($row);
$info="";
$len=count($city);
for($l=0;$l<$len;$l++){
//file_put_contents("e:/aa.txt",$city[$l][name],FILE_APPEND);
$info.="".$city[$l][name]."";
}
$info.="";
file_put_contents("e:/aa.txt",$info,FILE_APPEND);
echo $info;
回複討論(解決方案)
選中 省 ajax 取得 市 列表
並不需要再修改 省 列表了
怎麼選中省呢??
那我就奇怪了,你不是 省市聯動 嗎?
選中省 當然是使用者的事情啦
Ajax實現資料庫填充省市下拉框聯動菜單樣本
//Ajax和DropDownList設定
onselectedindexchanged="dlSheng_SelectedIndexChanged">
//調用資料庫顯示下拉框資料
SqlConnection sqlcon;
string strCon = ConfigurationManager.AppSettings["conn"];
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
sqlcon = new SqlConnection(strCon);
string sqlstr = "select tbSheng from tb_Sheng";
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
DataSet myds = new DataSet();
sqlcon.Open();
myda.Fill(myds);
dltbSheng.DataSource= myds;
dltbSheng.DataValueField = "tbSheng";
dltbSheng.DataBind();
string strtb_Shi = "select * from dl_Shi where tbSheng='" + dltbSheng.SelectedItem.Text + "'";
SqlDataAdapter mydaShi = new SqlDataAdapter(strtb_Shi, sqlcon);
DataSet mydsShi = new DataSet();
mydaShi.Fill(mydsShi);
ddlShi.DataSource = mydsShi;
ddlShi.DataValueField = "tb_Shi";
ddlShi.DataBind();
sqlcon.Close();
}
}
protected void dlSheng_SelectedIndexChanged(object sender, EventArgs e)
{
sqlcon = new SqlConnection(strCon);
string sqlstr = "select * from dl_Shi where tbSheng='" + dltbSheng.SelectedItem.Text+ "'";
SqlDataAdapter myda = new SqlDataAdapter(sqlstr, sqlcon);
DataSet myds = new DataSet();
sqlcon.Open();
myda.Fill(myds);
ddlShi.DataSource = myds;
ddlShi.DataValueField = "tb_Shi";
ddlShi.DataBind();
sqlcon.Close();
}