Установить фокус на текстовое поле в JQuery - PullRequest
5 голосов
/ 24 апреля 2011

Я сделал текстовое поле, и когда пользователь вводит команду.Эта команда передается в php-файл с помощью jquery-ajax и выполняется на сервере, и результаты возвращаются.Эти результаты выводятся в браузере путем создания тега div.

Проблема в том, что я добавляю тег div.Как я добавляю, мое текстовое поле кажется не в фокусе, мне нужно прокрутить страницу вниз, чтобы увидеть, что я печатаю.

Это функция, которая получает командуЯ набираю текстовое поле.

$(function() {
    $('#cmd').keydown(

    function(event) {
        if (event.keyCode == 13) {
            event.preventDefault(); /*you can call your function here*/
            var tmp = $(this).val();
            $('#cmd').val('');
            commands.push(tmp);

            MyFunction(tmp);
            /*still you can it here*/
        }
    });
});

Эта функция получает возвращаемое значение и создает тег div.

function MyFunction(msg) {
    var cmdStr = msg;
    $.ajax({
        url: 'exec.php',
        dataType: 'text',
        data: {
            q: cmdStr
        },
        success: function(response) { 

    $('#output').append("<div class=type> www-data@ubuntu:~# " + cmdStr +"</div>" + "<div class=output>" + response + "</div>");
        }

    });

}

Ответы [ 2 ]

15 голосов
/ 24 апреля 2011

Попробуйте это:

success: function(response){
    $("#output").append("<div class=type> www-data@ubuntu:~# " + cmdStr +"</div>" + "<div class=output>" + response + "</div>");
    $("#cmd").focus(); //Wil focus your textbox
}
3 голосов
/ 24 апреля 2011

Попробуйте это:

$(function() {
    $('#cmd').keydown(

    function(event) {
        if (event.keyCode == 13) {
            event.preventDefault(); /*you can call your function here*/
            var tmp = $(this).val();
            $('#cmd').val('');
            commands.push(tmp);

            MyFunction(tmp);
            $(this).focus(); // Set the focus back on to the #cmd element
        }
    });
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...