Текстовое поле, которое отправляется на каждую нажатую букву - PullRequest
0 голосов
/ 05 апреля 2011

У меня есть поисковая система 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 ]

1 голос
/ 05 апреля 2011

JQuery

$("input[name=search]").keyup(function(){
    $.ajax({
        type: "GET",
        url: "ajax.search.php",
        data: "q=" + $(this).val(),
        success: function(data){
            $("#results").html(data);
        }
    });
});
0 голосов
/ 05 апреля 2011

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

unFocus также не является допустимым событием (вы думаете о onblur), но вам нужно onkeyup.

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

0 голосов
/ 05 апреля 2011

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

...