我使用keyup
将输入元素绑定到函数text_1
。该函数以某种方式通过$(this).val()
获取文本字段的值。
我试图理解this
,但最好的解释是“这总是指我们正在执行的功能的”所有者“。在这种情况下,“所有者”是什么? $(this).val()
如何成为该领域的价值? keyup
发生时会传递什么?
我是Javascript和jQuery的新手。
function text_1() {
var val = $(this).val(),
html = 'Not-debounced AJAX request executed: ' + text_counter_1++ + ' times.'
+ ( val ? ' Text: ' + val : '' );
$('#text-type-1').html( html );
};
$('input.text').keyup( text_1 );
答案 0 :(得分:2)
“this”基于当前上下文和范围设置。 JQuery会将“this”设置为触发事件的元素。在这种情况下,JQuery将“this”设置为指向触发key up事件的html元素(输入)。
通过执行$(this) - 您正在使用JQuery对象包装当前设置为此的html元素,因此您可以在搜索输入上调用.val()。