使用其他DropDown选择填充一个下拉列表 [英] Populating One Dropdownlist with selection of other DropDown
本文介绍了使用其他DropDown选择填充一个下拉列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试使用其他DropDownlist控件选择填充一个下拉列表。
无法理解什么是错误的...因为没有发生任何事情,只是首先运行良好,即1号下拉是成功绑定数据但第二部分不起作用... PLZ帮助...
Hi, I am trying to Populating One Dropdownlist with selection of other DropDownlist control .
can't understand what is goin wrong..coz nothing is happening , just first is working well, i.e 1st Dropdown is binding data sucessfully but 2nd part isn't working...plz help...
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
cn.Open()
boundDp()
cn.Close()
End If
End Sub
Public Sub boundDp()
cmd.Connection = cn
cmd.CommandText = "Select * From Acct_Sum"
Dim da As New SqlDataAdapter(cmd)
Dim dt As New DataTable
da.Fill(dt)
DPA1.DataSource = dt
DPA1.DataTextField = "Loan_code"
DPA1.DataValueField = "Loan_code"
DPA1.DataBind()
DPA1.Items.Insert(0, "Select Item Here")
End Sub
Public Sub Shw_data()
cmd.Connection = cn
cmd.CommandText = "Select * From Acct_Sum Where Loan_code=@Loan_code"
cmd.Parameters.AddWithValue("@Loan_code", DPA1.SelectedItem.Value)
Dim dr As SqlDataReader
dr = cmd.ExecuteReader
If dr.HasRows Then
dr.Read()
TextBox1.Text = dr.Item("Bor_Name").ToString
TextBox2.Text = dr.Item("coBor_Name").ToString
End If
End Sub
Public Sub shw_data2()
cmd.Connection = cn
cmd.CommandText = "Select Loan_code From Acct_Sum2 Where Loan_code=@Loan_code"
cmd.Parameters.AddWithValue("@Loan_code", DPA2.SelectedItem.Value)
Dim da As New SqlDataAdapter(cmd)
Dim dt As New DataTable
da.Fill(dt)
DPA2.DataSource = dt
'DPA2.DataTextField = "chk_Num"
DPA2.DataValueField = "Loan_code"
DPA2.DataBind()
DPA2.Items.Insert(0, "Select Sub Item")
End Sub
Private Sub DPA2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DPA2.SelectedIndexChanged
cn.Open()
shw_data2()
cn.Close()
End Sub
注意......我有两个表... Acct_Sum和Acct_Sum2,唯一ID = Loan_code
Thnx ....
Note...I have two tables...Acct_Sum and Acct_Sum2 with Unique ID=Loan_code
Thnx....
推荐答案
按照下面的代码我做了一些修改来制作它更容易和工作。我没有验证连接等。
1)定义下面的两个下拉列表
Follow the code below i have made some modifications to make it easier and work. I didnt verified connections etc.
1) Define two dropdown list like below
<asp:dropdownlist id="drp1" runat="server" onselectedindexchanged="drp1_SelectedIndexChanged" autopostback="true" datavaluefield="xyz" datatextfield="xyz" xmlns:asp="#unknown">
</asp:dropdownlist>
<asp:dropdownlist id="drp2" runat="server" datavaluefield="loan_code" datatextfield="loan_code" xmlns:asp="#unknown">
</asp:dropdownlist>
2)
2)
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
cn.Open()
boundDp()
cn.Close()
End If
End Sub
3)
3)
Public Sub boundDp()
cmd.Connection = cn
cmd.CommandText = "Select xyz From Acct_Sum"
Dim da As New SqlDataAdapter(cmd)
Dim dt As New DataTable
da.Fill(dt)
Dim dr As DataRow = dt.NewRow()
dr("xyz") = "Select Item Here"
dt.Rows.InsertAt(dr, 0)
drp1.DataSource = dt
drp1.DataBind()
End Sub
4)
4)
Private Sub drp1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles DPA2.SelectedIndexChanged
cn.Open()
cmd.Connection = cn
cmd.CommandText = "Select loan_code From Acct_Sum2 Where loan_code=@Loan_code"
cmd.Parameters.AddWithValue("@Loan_code", drp1.SelectedValue)
Dim da As New SqlDataAdapter(cmd)
Dim dt As New DataTable
da.Fill(dt)
Dim dr As DataRow = dt.NewRow()
dr("xyz") = "Select Sub Item Here"
dt.Rows.InsertAt(dr, 0)
drp2.DataSource = dt
drp2.DataBind()
cn.Close()
End Sub
问候..:笑:
Regards..:laugh:
这篇关于使用其他DropDown选择填充一个下拉列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文