Установить фокус на текстовое поле с htmleditorextendor внутри панели обновления

У меня есть текстовое поле, прикрепленное к htmleditorextender, который присутствует внутри usercontrol, и этот пользовательский элемент управления присутствует внутри элемента управления списком данных, который находится на панели обновления. У меня есть кнопка редактирования ссылки, при нажатии на которую отображается текстовое поле, и в настоящее время я хочу установить фокус на текстовом поле, которое я пытался сделать.

 protected void lnkEditResponse_OnCommand(object sender, CommandEventArgs e)
    {
        if (QuestionList.Items.Count == 0)
        {
            log.Warn("There are no items in the data list.");
            return;
        }

        try
        {
            DataListItem item = QuestionList.Items[int.Parse(e.CommandArgument.ToString())];
            if (item == null)
            {
                log.Warn("No item found for the index " + e.CommandArgument);
                return;
            }

            Panel responseLabelPanel = item.FindControl("ResponseLabelPanel") as Panel;
            Panel responseInputPanel = item.FindControl("ResponseInputPanel") as Panel;
            TextBox textArea = item.FindControl("QuestionResponseTextBox") as TextBox;
            responseLabelPanel.Visible = false;
            responseInputPanel.Visible = true;

            ScriptManager mgr = ScriptManager.GetCurrent(this.Page);                                


            (responseInputPanel.FindControl("LinkClearAll") as LinkButton).Visible = true;
            (responseInputPanel.FindControl("lnkClear") as LinkButton).Visible = true;
            ScriptManager.RegisterStartupScript(this, this.GetType(), "f", "document.getElementById('" + textArea.ClientID + "').focus();", true);

        }
        catch (Exception ex)
        {
            log.Error("Exception while handling file delete.", ex);
        }
    }

Я также пытался получить texbox и делать.Focus(), но он не работает, есть какой-то способ сделать это.
PS: очень важно, чтобы я установил фокус на конец текущего текста в текстовом поле (текстовые поля загружены данными из базы данных)

1 ответ

Используйте сценарий на стороне клиента, чтобы сосредоточиться. HtmlEditorExtendor Загрузите много контента на странице. Это может вызвать проблемы. Попробуйте использовать ниже, JQuery может помочь вам.

Например:

$('#target').focus();
Другие вопросы по тегам