JQuery / AJAX выделяет текст в недавно добавленной проблеме в поле ввода - PullRequest
1 голос
/ 01 октября 2009

Я создаю приложение AJAX. Когда пользователь выбирает кнопку, новый элемент ввода добавляется на веб-страницу и заполняется данными. После добавления нового поля ввода (id = 'Input_thingy') на веб-страницу я хотел бы выделить текст. Проблема, с которой я столкнулся, заключается в том, что текст в новом поле ввода выделяется только на короткое время. Это все происходит во время выполнения команды JQuery "ajax":

$.ajax({
    type: "POST",
    url: "DoSomething.php",
    data: info,
    success: function(data) 
        {
        $('#Input_thingy').select();
            return false;
        },
 });

Я подозреваю, что проблема связана с тем, что команда выбора происходит в области команд ajax, но я не знаю, как это сделать правильно. Любая помощь?

Ответы [ 2 ]

1 голос
/ 01 октября 2009

Не уверен, но, возможно, новый вход теряет фокус при возврате false. Задумывались ли вы над тем, чтобы поместить оператор select в таймер следующим образом:

setTimeout(function() { $('#Input_thingy').select(); }, 100);

После успешного завершения выбора текста будет ждать 100 миллисекунд.

0 голосов
/ 01 октября 2009

Возможно, вы захотите попробовать использовать только функцию $ .post ()

$.post("DoSomething.php",
        { SomeDataToPost: "put data here"},
        function(data){
            $('#Input_thingy').focus().select();
       });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...