【问题标题】:set focus on first textbox of listview in insert mode using ajax使用ajax在插入模式下将焦点设置在listview的第一个文本框上
【发布时间】:2012-01-12 16:04:29
【问题描述】:

这是一个不错的:

使用更新面板的页面。里面是一个ListView。它有 1 个文本框。当用户单击按钮时,我将 ListView 的 InsertItemPosition 设置为顶部。

问:如何设置文本框的焦点?

【问题讨论】:

  • 可能值得发布您的 ListView 标记和按钮单击事件的代码,以便其他用户可以提供帮助。

标签: asp.net listview webforms updatepanel


【解决方案1】:

如果页面上有ScriptManager 控件,则可以将其用于SetFocusTextBox 控件。您需要在按钮单击事件中的代码中执行此操作。

编辑: 这应该允许您访问 InsertItemTemplate 中的 TextBox 控件。 注意:您需要将FindControl 方法中的控件名称更改为InsertItemTemplate 中的TextBox 名称。

示例:

TextBox tb = ListView1.InsertItem.FindControl("tbName") as TextBox;

if (tb != null)
{
   ScriptManager1.SetFocus(tb);
}

【讨论】:

  • TextBox1 来自哪里?将 ListView 设置为插入模式后,什么时候可以将其从控件集合中拉出? (我想这就是我需要做的)。
  • TextBox1 将是 TextBox 控件本身,但我想我误解了这个问题。你的意思是 TextBox 控件本身在 ListView 控件中,而不是直接在页面上?
  • TextBox 在 ListView 的 InsertItemTemplate 内。
  • @Jeroen 我已经更新了答案以反映从 InsertItemTemplate 中获取 TextBox。
  • 这是我已经尝试过的第一件事,但我无法获得文本框。 FindControl 不断返回 null。你想把它放在哪个页面事件中?
猜你喜欢
  • 2018-07-18
  • 1970-01-01
  • 1970-01-01
  • 2016-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-21
相关资源
最近更新 更多