2010-03-18 28 views
1

我有一个使用AJAX库的ASP.NET页面。在UpdatePanel中有一个下拉列表,它在索引改变时应该更新不同的UpdatePanel来修改一个网格控件。DropDownList总是做整页回发,第一次触发

但是在页面第一次出现后,您调整了ddl,整个页面回传,然后是(正确的)部分回发。在这一次之后,ddl的其他用法都能正确执行,并触发部分回发。

面板和ddl都是从代码中添加的。 UP是条件更新和ChildrenAsTriggers = true。下拉列表是AutoPostBack true,并在SelectedIndexChanged上设置了一个事件。

那么发生了什么事?我尝试过调整每个我能想到的设置,并且页面仍然完全刷新一次,然后再正常工作。

+0

我记得更新面板更新其他更新面板在特定情况下导致一些问题,但细节逃避我atm。 – Nate 2010-03-18 21:35:11

回答

0

我相信我已经解决了目前这个问题的困扰,尽管我对结果感到有些沮丧。当以编程方式添加下拉列表时,我没有给它一个ID,假设ASP.NET只是给它分配一些连续的名称容器损坏的ID。这似乎是原因。我假设最初的回发是由于ASP.NET尝试处理缺少正确的ID,分配一个ID,然后将其用于部分回发。

或者它可能是完全不同的根,但简单的解决方法是:添加一个ID到控件。

相关问题