За последние 24 часа нас посетили 17442 программиста и 1261 робот. Сейчас ищут 1523 программиста ...

Autocomplete прокрутка вниз клавишей.

Тема в разделе "Вопросы от блондинок", создана пользователем kamil-chelny, 12 дек 2010.

  1. kamil-chelny

    kamil-chelny Активный пользователь

    С нами с:
    28 май 2009
    Сообщения:
    26
    Симпатии:
    0
    Всемпривет. Проблема такая. Установил плагин autocomplete. Все отлично, но заказчику нужно, чтобы по выведенным результатам можно было быстро перемещаться с помощью клавиши вниз. В Мозилле все работает, но не работает в ОПЕРЕ. ПОЧЕМУ???? КАК БЫТЬ?

    Обновляю более новую версию autocomplete в Опере работает, но не работает функция OnItemSelect, хотя она мне очень нужна.

    ЖДУ ОТВЕТ, СПАСИБО!
     
  2. Invision

    Invision Активный пользователь

    С нами с:
    26 фев 2009
    Сообщения:
    1.437
    Симпатии:
    1
    Адрес:
    Томск
    кусок кода к примеру дай так никто ничего не скажет
     
  3. kamil-chelny

    kamil-chelny Активный пользователь

    С нами с:
    28 май 2009
    Сообщения:
    26
    Симпатии:
    0
    Вот мой код:

    Здесь я объявляю о заполнении списка автозаполнения:
    Код (Text):
    1.  
    2. var idpeople=$("#idpeople1").val();
    3. ;("#tovar1").autocomplete("/ajax/tovar_select2.php",{delay:10,formatItem:liFormat_peredacha,extraParams:{idpeople:idpeople,type:2},onItemSelect:selectItem}
    4.  
    5. function selectItem(li) {
    6.     if( li == null ) var sValue = 'А ничего не выбрано!';
    7.     if( !!li.extra ) var sValue = li.extra[0];
    8.     else var sValue = li.selectValue;
    9.     alert(sValue);
    10. }
    PHP-КОД:


    Код (Text):
    1.  
    2. <?
    3. require("../config/config.php");
    4. require("../config/func.php");
    5. $q=iconv("utf-8","cp1251",$_GET['q']);
    6. $idpeople=$_GET['idpeople'];
    7. $type=$_GET['type'];
    8. if ($q=='*') {$q="";}
    9. $sql=mysql_query("
    10.     SELECT t.idtovar,t.tovar,SUM(dt.kolvo) as kol,dt.srok
    11.     FROM dvizhenie_tovara dt
    12.     INNER JOIN tovar t ON t.idtovar=dt.idtovar
    13.     LEFT JOIN sklad s ON s.idtovar=t.idtovar and s.idpeople='$idpeople'
    14.     WHERE t.tovar LIKE '%$q%'
    15.     GROUP BY dt.srok,dt.idtovar
    16.     ORDER BY t.tovar ASC,dt.srok ASC,kol ASC
    17. ");
    18. while($row=mysql_fetch_array($sql)) {
    19.     $idtovar=$row['idtovar'];
    20.     $tovar=$row['tovar'];
    21.     $kol=$row['kol'];
    22.     $srok=$row['srok'];
    23.     $srok=date("d.m.Y",strtotime($srok));
    24.  
    25.     $asql=mysql_query("SELECT SUM(dtt.kolvo) as kol1 FROM dvizhenie_tovara_time dtt INNER JOIN dvizhenie d ON dtt.iddvizhenie=d.iddvizhenie and d.tip='$type'  WHERE dtt.idtovar='$idtovar'");
    26.     $arow=mysql_fetch_array($asql);
    27.     $kol1=$arow['kol1'];
    28.    
    29.     $bsql=mysql_query("SELECT SUM(dt.kolvo) as kol2 FROM dvizhenie_tovara dt INNER JOIN dvizhenie d ON d.tip='3'  WHERE dt.idtovar='$idtovar'");
    30.     $brow=mysql_fetch_array($bsql);
    31.     $kol2=$brow['kol2'];
    32.    
    33.     $kol=$kol-$kol1-$kol2;
    34.     echo $tovar."|".$idtovar."|".$kol."|".$srok."\r\n";
    35. }
    36. ?>
     
  4. kamil-chelny

    kamil-chelny Активный пользователь

    С нами с:
    28 май 2009
    Сообщения:
    26
    Симпатии:
    0
    Проблема решилась след.образом:

    Код (Text):
    1.  
    2. $("#tovar1").result(function(event, data){
    3. $("#srok").val(data[3]);
    4. });
    [/code]