我有两个asp下拉列表,第二个将在第一个下拉列表具有选定值时生成选项。下拉列表都从数据库中获取数据。 但是,当我尝试将这两个值插入到我的表中时,第一个下拉列表项将正确插入,第二个下拉列表总是将第一个项插入到我的表中。
经过一些测试后,我发现第二个下拉列表没有被选中,第一个项目被插入到我的表中,因为它是默认值。
BTW,我的第一个下拉列表是autopostback
,而第二个下拉列表不是。{/ p>
我使用的是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>
答案 0 :(得分:1)
请检查您的数据库中的下拉绑定数据是否在Page init上的IsPostback中。如果没有,则在按钮事件触发之前,它将重新绑定页面初始化函数的下拉列表。
答案 1 :(得分:0)
尝试
dropdown2.selectedvalue
或
dropdown2.selecteditem