javascript - 使用 jQuery 捕获文本区域的文本值

标签 javascript jquery

我有一堆<textarea>我页面上的元素都具有相同的“名称”属性。我正在 try catch 当前焦点的文本区域的文本:

$('body').on('click', '[name=btnAddQuestion]', function () {

    questionText = $("[name=stem]").val();
    console.log('questionText: ' + questionText);

});

但我只能让它捕获第一个 <textarea> 的文本在列表中。有没有一种方法可以做到这一点,而不必为每个文本框提供唯一的 ID?

谢谢!

这是一个jsfiddle:

http://jsfiddle.net/9b2XA/2/

最佳答案

尝试使用:focus选择器。

$("[name=stem]:focus").val();

您实际上可以简单地执行以下操作:

$(document.activeElement).val();

编辑:实际上这不起作用,因为一旦单击按钮,文本区域就会失去焦点。我的答案写得太快了。

但是,您可以做的是跟踪最后一个获得焦点的 textarea 并在点击处理程序中使用它。

var lastFocusedTextArea = null;

$('textarea[name=stem]').focus(function (e) {
    lastFocusedTextArea = e.currentTarget;
});

关于javascript - 使用 jQuery 捕获文本区域的文本值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19575432/

相关文章:

javascript - 如何在 jQuery 中使用 html 表打印 html 表中的值

javascript - knockout - 它是如何工作的?

javascript - RTCmulticonnection getViewers + onjoin 事件

javascript - 用于使用点表示法查询字符串的对象数组,jQuery

javascript - 像 javascript 中的代码一样的小型 FSM

javascript - 如何让同一类的两个 div 在屏幕上移动?

javascript - 如何在 javascript 中共享来自主线程和网络 worker 的变量?

javascript - 如何在 Webix FileManager 中查看上传是否完成

javascript - 如何通过 JQuery 更改 figcaption

javascript - jquery 计算word中的字符数