Здравствуйте! Срочно нужна помощь.
Есть input, к которому подключаю автокомплит, а во-второй получаю id результата.
Код:
|
<input id='pb_punkt_n' name='pb_punkt_n' class='pl_bir_n_cl' rel='6' type="input" size='50' value="" maxlength='256'/>
<input id='pb_punkt_idk' name="pb_punkt_idk" class='pl_bir_idk_cl' rel='6' type="hidden" value=""/> |
Собственно автокомплит:
Код:
|
$("input.pl_bir_n_cl").each(function(){
$(this).autocomplete("/docs/snils/ajax_oc", {
delay: 200,
extraParams: {what:2},
matchSubset: true,
formatItem: function(row) {
return row[0];
},
formatResult: function(row) {
return row[0];
}
});
$(this).result(function(event, data, formatted) {
if(data) { alert("OK");
$(this).next().val(data[1]);
}else{ alert("FAIL");
$(this).val('');
$(this).next().val(0);
$(this).focus();
}
});
$(this).change(function(){
if($(this).val() == '') {
$(this).next().val(0);
}
});
}); |
Так вот фишка в том, что result срабатывает дважды на один и тот же запрос, т.е. выводится сначала OK, а потом сразу FAIL. Данные зануляются и полный ахтунг творится. А еще фишка в том, что на других полях точно такой же автокомплит спокойно себе работает!