gpt4 book ai didi

javascript - 为什么这个变量没有在 setTimeout 函数中设置?

转载 作者:行者123 更新时间:2023-11-28 11:40:47 25 4
gpt4 key购买 nike

我有一个基本的文本区域:

<textarea id='text_comment'></div>

我有这个功能:

$('#text_comment').live('keypress', function() {

setTimeout(function() {
string = $(this).val();

alert(string);
}, 500);

});

它应该提醒文本区域中的值,但它什么也没提醒。

我希望它在 500 毫秒后获取文本区域的值,但如果它位于 setTimeout 函数内部,它似乎不会设置变量。

最佳答案

上下文变为window自从 setTimeoutwindow 的方法.

$('#text_comment').live('keypress', function() {

var el = this;

setTimeout(function() {
var string = $(el).val();

alert(string);
}, 500);

});

如果您以这种方式保存对 el 的引用,您可以依赖它而不是 this

而且,您也可以使用 el.value因为不需要将其包装在 jQuery 中并通过 .val() 在内部执行完全相同的操作

关于javascript - 为什么这个变量没有在 setTimeout 函数中设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6353726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com