JQuery:在ajax加载后关注textarea

时间:2011-10-31 14:52:33

标签: jquery ajax focus

我正在使用Ajax加载表单的一部分。如何在ajax请求之后关注textarea对象?

这是加载的html:

<legend>Test</legend>
<label for="t">This is only a test</label>
<textarea></textarea>
<a href="#" class="continue">Continue</a>

这是JQuery / Ajax代码:

$.post(
    'ajax.php',
    { next:next },
    function(data){
        $('body').append($(data).hide().fadeIn('slow'));
    }
);

感谢。

2 个答案:

答案 0 :(得分:9)

在追加html:

后,在回调中使用.focus()触发器
$.post(
    'ajax.php',
    { next:next },
    function(data){
        $('body').append($(data).hide().fadeIn('slow'));
        $('textarea').focus();
    }
);

答案 1 :(得分:1)

此剪辑在HTML中查找“自动对焦”属性,并专注于给定元素。

$('[autofocus]').focus()

这样,如果视图在Ajax中加载,它就可以工作,如果没有JavaScript并且视图加载时没有ajax,你仍然可以获得自动对焦。