HTMLпеременной Pass в качестве параметра в JQuery
<input type="text" id="test" />
<span>0</span>
JQuery
var input = $('input#test');
input.bind('keyup', function() {
doThis();
});
input.on('input', function() {
doThis();
});
function doThis() {
var wordCounts = {};
var matches = this.value.match(/\b/g);
wordCounts[this.id] = matches ? matches.length/2 : 0;
var finalCount = 0;
$.each(wordCounts, function(k, v) {
finalCount += v;
});
$('span#word-count').text(finalCount);
}
jsFiddle: http://jsfiddle.net/YJVPZ/265/
Сейчас doThis()
даже не работает. Если бы я должен был обернуть содержимое doThis()
input.bind('keyup', function() { ... }
, он будет работать нормально. Я знаю, это потому, что он использует неопределенный this
. Как передать переменную input
в качестве параметра?
Есть ли способ использовать .bind и .on вместе для вызова той же функции вместо двух отдельных экземпляров, как у меня сейчас?