javascript - jQuery focus() 位于属于动态添加到页面中的表单的文本区域

标签 javascript jquery html focus textarea

我使用clone()动态地将新表单添加到页面中,但是当我添加它时,我想让表单的文本区域成为焦点。我有下面的代码,但它不起作用:

.on('click', '.edit', function(e) {
            e.preventDefault();
            var $comment_holder = $($(this).closest('li'));
            var $edit_form = $('.comments form').clone();
            $edit_form.find('textarea').focus();
            $comment_holder.append($edit_form);
 });

我在这里发现了很多相关问题,但它们并没有帮助解决我的问题。

最佳答案

克隆后立即尝试使用 jQuery 的 appendTo

$edit_form.appendTo( $comment_holder );

换句话说;

.on('click', '.edit', function(e) {
    e.preventDefault();
    var $comment_holder = $(this).closest('li');
    var $edit_form = $('.comments form').clone();
    $edit_form.appendTo( $comment_holder ).find('textarea').focus();
});

关于javascript - jQuery focus() 位于属于动态添加到页面中的表单的文本区域,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30237143/

相关文章:

javascript - 检查div不在叠加层后面时是否可见div

javascript - 定义正则表达式

jquery - 简单的切换查询

javascript - qTip 文本提示简单插件不起作用

javascript - 如何在angularJS列表中添加项目?

javascript - 将类添加到列表元素

javascript - 如何在 react 中创建文本框

javascript - Knockout JS 模板 HTML 无法正确呈现

jquery - 从 summernote textarea 中提取编辑过的文本

Java servlet 和服务器发送的事件