Привет, вот пишу систему поиска на jquery и фактически написал, но опять же остались вопросы, почему обработчику пхп достаются слова, предшествующие окончательному слову? Например слово test ввожу, но поиск уже пытается искать по:
t
te
tes
Хотя как видно из моего кода, таймер сбрасывается при факте нового ввода и по идее отсчёт идёт опять с исходного значения.
и форма поиска
<input style=\"width: 70%; font-size:20px;\" type=text id=seu value='' onKeyUp = 'seu(this.value);' >
скрипт пхп обработчика не стану приводить, там и так ясно, получает значение и он выводит данные из БД, вот только казус, откуда пхп "знает" историю ввода, до окончательного варианта слова test?
Весь прикол в том, что визуально при факте ввода таймер сбрасывается на исходную, но тем не менее данные вводимые до этого остаются доступными сценарию... Ведь по логике переменная value должна обновляться при каждом новом вводе в поле поиска... Честно, немного запутался и потому пришёл посоветоваться сюда.
Помогите пожалуйста, почему сценарий помнит всю историю ввода, мне ведь надо только то, что было введено в последний раз.
t
te
tes
Хотя как видно из моего кода, таймер сбрасывается при факте нового ввода и по идее отсчёт идёт опять с исходного значения.
function seu(value) {
var cu = 2;
var users = $("#users");
var itog = $("#itog");
var timer = setInterval(function(){
cu--;
$("#secunda").html('<br><b>ввод данных доступен</b> '+cu);
$("#seu").keyup(function(){
clearInterval(timer);
});
itog.html('<br><img src=images/ajax-loader.gif>');
if(cu <= 0 ) {
users.fadeTo(500, 0.4);
$("#secunda").html('');
$.post(
'../plugins/users/admin/ajax.inc.admin/usersload.php',
{
act: "users",
id: value
},
function (data) {
users.html(data);
users.fadeTo(500, 1);
}
);
$.post(
'../plugins/users/admin/ajax.inc.admin/usersload.php',
{
act2: "itog",
id: value
},
function (data) {
itog.html(data);
}
);
clearInterval(timer);
}
},1000);
}
var cu = 2;
var users = $("#users");
var itog = $("#itog");
var timer = setInterval(function(){
cu--;
$("#secunda").html('<br><b>ввод данных доступен</b> '+cu);
$("#seu").keyup(function(){
clearInterval(timer);
});
itog.html('<br><img src=images/ajax-loader.gif>');
if(cu <= 0 ) {
users.fadeTo(500, 0.4);
$("#secunda").html('');
$.post(
'../plugins/users/admin/ajax.inc.admin/usersload.php',
{
act: "users",
id: value
},
function (data) {
users.html(data);
users.fadeTo(500, 1);
}
);
$.post(
'../plugins/users/admin/ajax.inc.admin/usersload.php',
{
act2: "itog",
id: value
},
function (data) {
itog.html(data);
}
);
clearInterval(timer);
}
},1000);
}
и форма поиска
<input style=\"width: 70%; font-size:20px;\" type=text id=seu value='' onKeyUp = 'seu(this.value);' >
скрипт пхп обработчика не стану приводить, там и так ясно, получает значение и он выводит данные из БД, вот только казус, откуда пхп "знает" историю ввода, до окончательного варианта слова test?
Весь прикол в том, что визуально при факте ввода таймер сбрасывается на исходную, но тем не менее данные вводимые до этого остаются доступными сценарию... Ведь по логике переменная value должна обновляться при каждом новом вводе в поле поиска... Честно, немного запутался и потому пришёл посоветоваться сюда.
Помогите пожалуйста, почему сценарий помнит всю историю ввода, мне ведь надо только то, что было введено в последний раз.
Версия PHP: PHP 5
Сервер: Локальный сервер