JQuery автозаполнения введите ключ - PullRequest
4 голосов
/ 21 октября 2010

В настоящее время действие автозаполнения при нажатии клавиши Enter на выбранном элементе заключается в том, чтобы поместить значение этого элемента в поле ввода.

Как изменить поведение так, чтобы при нажатии Ввод клавиша на элементе вызывает, что элементы внедрили URL.Чтобы упростить, я бы хотел, чтобы клавиша Enter работала так же, как щелчок мыши по возвращаемому элементу.

Спасибо

Ответы [ 3 ]

2 голосов
/ 06 сентября 2012

Легко!

$(".quicksearch-input").autocomplete({

  minLength: 4, // minimum length to trigger suggestions

  // ... + other configuration options

  select: function(e, ui) { // define select handler

    var uri = ui.item.link; // where ui.item.link itself is defined in your object which you composing when retrieving JSON from endpoint

    window.location = uri; // forwarding to the URL obtained

  }, // select //
});

Но все зависит от вашего способа реализации.

1 голос
/ 21 октября 2010

Эта функция вызывается, когда вы выбираете элемент и нажимаете ввод.Хакерский код, который вы видите в этой функции, извлекает href из ссылки и перенаправляет на этот URL.

$("#searchBox").result(function(event, data, formatted) {
        var p = data.toString();
        p = p.replace('<a href="', '');
        var url = p.substr(0, p.indexOf('"'));
        p = p.replace('</a>', '');
        p = p.substr(p.indexOf('>') + 1, p.length - p.indexOf('>') - 1);
        window.location = "" + url;
        return false;
    });
0 голосов
/ 21 октября 2010

Вы пробовали событие нажатия клавиши

посмотрите на события

http://api.jquery.com/keypress/

http://api.jquery.com/category/events/keyboard-events/

http://api.jquery.com/category/events/mouse-events/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...