我有两个 asp 下拉列表,当第一个下拉列表具有选定值时,第二个将生成选项。两个下拉列表都从数据库中获取数据。但是,当我尝试将这两个值插入我的表中时,第一个下拉列表项将正确插入,第二个下拉列表始终将第一项插入我的表中。
经过一些测试,我发现第二个下拉列表没有被选中,第一个项目被插入到我的表中,因为它是默认值。
顺便说一句,我的第一个下拉列表是autopostback
,而第二个不是。
我正在使用 Microsoft Web Developer 2010 express,我正在使用 Visual Basic。
第一个下拉列表:
<asp:DropDownList ID="stockcodeddl" runat="server" AutoPostBack="True" DataSourceID="SqlDataSource1" DataTextField="stockcode"
DataValueField="stockcode" Width="174px" Height="19px">
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:oakwell %>"
SelectCommand="SELECT [stockcode] FROM [orders] GROUP BY [stockcode]">
</asp:SqlDataSource>
second dropdown list:
<asp:DropDownList ID="componentddl" runat="server" DataSourceID="ComponentsByStockCode" DataTextField="component"
DataValueField="stockcode" Width="174px" Height="19px"
Enable="true" onchange="getComponent()" >
</asp:DropDownList>
<asp:TextBox ID="comtxt" runat="server"></asp:TextBox>
<asp:SqlDataSource ID="ComponentsByStockCode" runat="server"
ConnectionString="<%$ ConnectionStrings:oakwell %>"
SelectCommand="SELECT component, stockcode FROM orders WHERE ([stockcode] = @stockcode) GROUP BY stockcode, component">
<SelectParameters>
<asp:ControlParameter ControlID="stockcodeddl" Name="stockcode" PropertyName="SelectedValue" />
</SelectParameters>
</asp:SqlDataSource>