动态编辑textarea文本后,专注于textarea

时间:2018-09-30 18:30:25

标签: javascript jquery html css

我有一个textarea,每次检测到“ keyup”时,它将textarea的当前值设置为textareas文本。原因是,这样该文本成为了HTML的一部分,然后我可以使用localStorage保存输入的文本。

到目前为止我的代码...

$(document).on('keyup', '.note_text', function () {
    var text = $(this).val();
    $(this).text(text);
});

我的问题是,一旦检测到按键,文本区域就不再是焦点,因此您必须单击它并再次键入,显然,您只能按住键才能连续键入,就像您键入一样通常该功能是通过向上键触发的。

我正在使用$(document),因为textarea是动态创建到DOM中的

2 个答案:

答案 0 :(得分:1)

添加它,如jQuery documentation中所述:

$("textarea").trigger("focus");

如果没有jQuery,则与以下内容相同:

document.querySelector('textarea').focus();

这两个示例均假定您的html仅包含一个textarea。否则,您必须添加逻辑以选择正确的逻辑。

答案 1 :(得分:0)

经过反复试验,我设法找到了可行的解决方案...

 $(document).on('keyup', '.className', function () {
    var text = $(this).val(); // Gets the text of the textarea being typed in
    $(this).html(text); // Set the text as part of the html of the textarea
    $(this).focus(); // refocuses back on the text area so the user can type
    save(); // saves the DOM to the localStorage
});