Asp.net DropdownList和Textbox未调用SelectedIndex/Text在IE和FF中第一次回发时更改
我知道这是一个以前被问过几次的问题,但是环顾四周,我似乎找不到一个适合我的答案 我有一个VB.NET页面,有两个文本框(设置为使用JQuery显示日期)、一个dropdownlist和一个datagrid 文本框和dropdownlist都设置为触发事件(如果更改),以更新数据网格 一般来说,这很好,只有一个例外;当我在初始页面加载后更改文本框或dropdownlist的值时,通常不会触发事件,回发设置为false,dropdownlist值被清除;这种情况在Chrome中不会发生,在Firefox中比在IE中更不常见 我尝试了以下方法: 我已将所有项目的autopostback设置为true 尝试将未启用的额外项目添加到dropdownlist 将框/列表移到更新面板外 设置ViewStateMode=已启用 尝试添加一个设置为Request.Form(ddlDropdownList.UniqueNumber)的隐藏字段,并将其与页面加载中的Request.Form(ddlDropdownList.UniqueNumber)进行比较,以触发事件(建议使用Request.Forms,但这不是intellisense上的选项?) 所有这些解决方案要么不起作用,导致其他问题,要么我做得不对(当然可能是这样)Asp.net DropdownList和Textbox未调用SelectedIndex/Text在IE和FF中第一次回发时更改,asp.net,vb.net,Asp.net,Vb.net,我知道这是一个以前被问过几次的问题,但是环顾四周,我似乎找不到一个适合我的答案 我有一个VB.NET页面,有两个文本框(设置为使用JQuery显示日期)、一个dropdownlist和一个datagrid 文本框和dropdownlist都设置为触发事件(如果更改),以更新数据网格 一般来说,这很好,只有一个例外;当我在初始页面加载后更改文本框或dropdownlist的值时,通常不会触发事件,回发设置为false,dropdownlist值被清除;这种情况在Chrome中不会发生,在Firef
提前感谢您提供的任何帮助。我不知道这是否有帮助,我已经有一段时间没有使用web表单了,但我确实记得列表框存在问题,在填充页面时,我必须检查页面是否不在回发中 因此,基本上在页面加载方法中,在初始化之前检查页面是否不是回发。我发现,即使我选择了一个新项目,它也会将列表重置回默认状态
这可能对您有帮助,也可能没有帮助,但我认为至少值得一提。我将BuildDropDownList()放在一个“if not IsPostBack”(如果不是IsPostBack)中,这是在第一个selectedindexchange上被点击的,因为IsPostBack设置为false(只是第一次)。我还将其移动到一个子句中,该子句检查文本框是否已填充(因为它们似乎没有被重置),当我这样做时,dropdownlist根本没有填充。