У меня есть текстовое поле <input type="text" id="search" />
, и я хотел бы выполнять функцию JavaScript каждый раз, когда пользователь изменяет содержимое в нем (по буквам).Как я могу сделать это с помощью jQuery?
Я пытался реализовать функцию в качестве ответа на Используя JQuery, как вы определяете, изменилось ли значение ввода текста, пока поле все еще имеет фокус?, но ничего не происходит для меня.
Вот мой HTML:
<html>
<head>
<script type="text/javascript" src="/jquery-1.6.1.min.js"></script>
<script type="text/javascript" src="/search.js"></script>
</head>
<body>
<form>
<input type="text" name="search" id="search" />
</form>
</body>
</html>
Мой search.js:
var target = $('#search'), val = target.val();
function search()
{
alert('search');
}
target.keyup(search);
Я также пытался с (ничего не происходит):
$('input[name=search]').change(function() {
alert('changed');
})
И если я попытаюсь просто добавить HTML с помощью jQuery, это сработает:
$(function(){
$("<p>hello</p>").insertAfter("#search");
})