2

我在 UpdatePanel 中有一些文本框/标签。当我从其中一个文本框中跳出时,必须用一些文本更新标签。这会导致页面上的焦点重置到最顶部的元素。

这是一个数据输入表单,用户希望根本不必使用鼠标。我可以将焦点重新放在代码中的正确文本框上:

Page.SetFocus(tbxInput);

或者

tbxInput.Focus();

在 IE 中,浏览器滚动位置保持不变(哇哦!)。在 Chrome 和 Firefox 中不是;调整滚动位置,使焦点文本框是页面上显示的最后一个元素。这确实让用户感到不安。

我在 web.config 中使用以下规则:

<pages theme="Default" styleSheetTheme="Default" maintainScrollPositionOnPostBack="true" validateRequest="false">

我怎样才能实现 IE 的行为?

4

2 回答 2

1

对于这种事情,我从 javascript 更新标签文本(可能使用对 Web 服务或页面方法的 AJAX 调用)。

于 2010-12-20T20:34:18.000 回答
0

使用 asp.net AJAX UpdatePanel 是一种选择。此外,您使用的是哪个版本的 .net 框架。

按照这个4.0 它应该可以工作,但我还没有尝试过。

于 2010-12-20T21:16:44.573 回答