DropDownList et ListBox implémentent une fonction de liaison à deux niveaux. Ils peuvent également lier les informations sélectionnées dans la base de données d'arrière-plan. La fonction à implémenter ici est de sélectionner "Province" dans DropDownList, puis de laisser ListBox. L'affichage automatique de la « ville » sous sa province est ce que l'on appelle la fonction de liaison à deux niveaux. Nous avons vu cette fonction sur de nombreuses pages Web d'enregistrement. Aujourd'hui, nous allons utiliser ASP.NET pour percer son mystère.
1. Configurez l'interface frontale et ajoutez les contrôles DropDownList et ListBox au formulaire Web. Le schéma de l'interface est présenté ci-dessous.
2. Écrivez le code de fond
Ici, le code de fond est écrit dans l'événement Page_Load de sa forme
<span style="font-family:KaiTi_GB2312;font-size:18px;"> protected void Page_Load(object sender, EventArgs e) { if (!Page.IsPostBack ) //判断页面是否第一次加载 { SqlConnection con = DB.createConnection(); //此方法在上一篇文章中已经介绍,调用一个已经编写好的创建数据库连接的方法。 SqlCommand cmd = new SqlCommand("select * from province",con); SqlDataReader sdr = cmd.ExecuteReader(); this.DropDownList1.DataTextField = "proName"; this.DropDownList1.DataValueField = "proID"; //主键字段 this.DropDownList1.DataSource = sdr; this.DropDownList1.DataBind(); sdr.Close(); } }</span>
Écrivez le code de l'événement DropDownList1_SelectedIndexChanged pour vous rendre compte que lorsque vous cliquez sur "province", la ListBox ajoute automatiquement la "ville" de la "province"
<span style="font-family:KaiTi_GB2312;font-size:18px;"> protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e) { this.ListBox1.Items.Clear(); SqlConnection con2 = DB.createConnection(); SqlCommand cmd1 = new SqlCommand("select * from city where proID=" + this.DropDownList1.SelectedValue, con2); SqlDataReader sdr1 = cmd1.ExecuteReader(); while (sdr1.Read()) { this.ListBox1.Items.Add(new ListItem(sdr1.GetString(2),sdr1.GetInt32(0).ToString())); } }</span>
Exécutez le fichier, l'image de l'effet est la suivante
Je n'ai pas ajouté ici toutes les villes de la province du Hebei, juste pour obtenir la fonction de liaison à deux niveaux par rapport aux contrôles Web . GridView et Repeater Bien que les fonctions GridView et Repeater soient assez puissantes, différentes commandes ont des utilisations différentes. Comment puis-je utiliser un couteau pour tuer un poulet ici ?
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!