Мне нужно захватить событие keyup, чтобы обеспечить оперативную проверку, когда пользователь вводит данные (событие изменения срабатывает только тогда, когда ввод теряет фокус).
У меня проблемы с получением отредактированного значения входа, который запустил evnt.
Код также запускается по таймеру для предотвращения множественных вызовов, когда пользователь печатает (срабатывает только каждые 500 мс).
У меня есть несколько входов с классом "priceinput" и я прикрепляюсь к событию keyup каждого, как показано ниже:
<script language="javascript" type="text/javascript">
var timer;
$(document).ready(function()
{
$(".priceinput").each(function()
{
$(this).keyup(function(e)
{
clearTimeout(timer);
timer = setTimeout(function()
{
//how to get the value of the input element that was changed?
var value = ???;
$.getJSON('/Validator/IsValidInput', { input: value },
function(response)
{
//indicate if input is correct
});
}, 500);
});
});
});
</script>
Чтобы получить входное значение отправителя, я попытался $(this).val
, this.val()
, e.target.val()
, но, похоже, ни один из них не работает.
Как мне получить значение для ввода отправителя?