我正在使用js函数在dropdownlist中添加项目。所有项目都添加得很完美,但是当我想在数据库中添加选定的值时,在点击按钮时,下拉列表会在回发时重置。
我该怎么办?
答案 0 :(得分:3)
这些项目在回发时会丢失,因为它们是通过javascript添加到客户端的,并且在viewstate中不存在。
选项是添加<asp:hiddenfield />
,并将一些javascript代码添加到下拉列表的onChange
事件中,以将selectedvalue写入hiddenfield输入。然后在回发后可以访问该值。您仍然需要在回发后重新填充下拉列表。
示例:
<asp:HiddenField ID="DropDownValue" runat="server" />
<select onChange='document.getElementById("<%= DropDownValue.ClientID %>").value = this.value;'></select>
答案 1 :(得分:0)
我遇到了同样的问题,但我通过ajax获取了ddl的数据。在我的情况下,我使用与Page_Init(...)
中的每个回发在客户端上获得的相同数据填充DDL