Текстовое поле, которое отправляется на каждую нажатую букву

У меня есть поисковая система php, и я хочу текстовое поле Java, которое отправляется на каждую нажатую букву. Эффект, который я хочу, это мгновенный Google. Мой сайт прост, поэтому он будет работать быстро.

<form method='post' action='?&id=search' name='form' >
   Search:<br>
   <input name='search' value='<?php echo "$sq"; ?>' type='text' class='form2' style='font-weight:bold;' size='25' onUnfocus='send()'> 
   <input type='submit' class='button' value='Search'>

большое большое спасибо

3 ответа

JQuery

$("input[name=search]").keyup(function(){
    $.ajax({
        type: "GET",
        url: "ajax.search.php",
        data: "q=" + $(this).val(),
        success: function(data){
            $("#results").html(data);
        }
    });
});

Судя по представленному вами коду, я предполагаю, что он работает, но не для каждой нажатой клавиши, потому что вам нужно использовать либо onkeyup, либо onchange

Использование стандартного метода отправки формы перезагрузит страницу. Вам нужно будет отправить данные формы с помощью AJAX и динамически обновить результаты.

unFocus также не является действительным событием (вы думаете о onblur) но то, что вы хотите, это onkeyup,

Обработчик событий javascript должен отправлять данные формы, а обработчик успеха должен обновлять результаты.

Другие вопросы по тегам