下拉列表自动提交?

3
以下是我的下拉列表,自动回发为true。现在当我选择前缀1时,它会给我一个回发,但当我再次选择它时,它不会回发。我必须先选择前缀2项,然后再返回到前缀1才能再次回发。就像只有在SeletedIndexChange时才回发一样。
我需要每次选择下拉列表时都进行回发,即使是相同的项目。
<asp:DropDownList runat="server" ID="lstFilePrefix1" AutoPostBack="True" 
     OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"  >
    <asp:ListItem Text="Prefix1" Value="Prefix1" />
    <asp:ListItem Text="Prefix2" Value="Prefix2" />
    <asp:ListItem Text="Prefix3" Value="Prefix3" />
    <asp:ListItem Text="Prefix1 and Prefix2" Value="Prefix1 and Prefix2" />
    <asp:ListItem Text="Prefix2 and Prefix3" Value="Prefix2 and Prefix3" />
</asp:DropDownList>
4个回答

3

由于下拉列表的行为,在选择索引更改时,会发生回发,您需要更改控件选择,可以使用复选框控件来实现。


1
<asp:DropDownList runat="server" ID="lstFilePrefix1" AutoPostBack="True" 
 OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged"  >

正如您应该已经注意到的,事件处理程序是OnSelectedIndexChanged :) 因此,如果您选择一个元素,然后再次单击它,则索引根本没有更改! 为了触发它,索引必须更改。 我认为您想要的不可能通过DDL实现


0
下拉控件的基本特性/行为是显示供用户选择的项目。当用户选择一个项目并再次选择相同的项目时,触发OnSeletedIndexChange事件是没有意义的。实际上,项目索引没有变化 如果这解答了您的问题,请标记它。

0

好的,正如方法名称所示,只有在选择索引更改时才会发生后台提交。如果您想每次选择时都进行后台提交,您可能需要使用Html属性“onclick”,编写一些JavaScript函数并自行进行后台提交。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接