Автозаполнение пользовательского интерфейса jQuery перейти к URL-адресу при выборе

Мне просто интересно, как я перейду к URL-адресу по клику из возвращенных результатов. Мой jQuery выглядит следующим образом:

$('#input').autocomplete({
    source: function(request, response) {
        $.ajax({
            url: 'script.php',
            cache: false,
            dataType: 'json',
            data: {
                term: request.term
            },
            success: function(data) {
                response(data);
            }
        });
    }
});

И мой script.php возвращается:

[
    {
        "label":"Text to display",
        "url":"Url to go to"
    }
]

Мне не хватает инструкций по автозаполнению, но я понимаю, что мне нужно что-то сделать с «выбрать»?


person generalcb    schedule 06.08.2014    source источник
comment
Решит ли какой-либо из приведенных ниже ответов вашу проблему?   -  person miron    schedule 08.08.2014
comment
Возможный дубликат Автозаполнение выбора перенаправления   -  person rogerdpack    schedule 02.11.2018


Ответы (2)


Я не знаю, почему вы передаете источнику обратный вызов, он работает без использования:

$('#input').autocomplete({
  source: 'script.php',
  select: function(event, ui){
    console.log(ui.item.url)
    // redirect to url
     // window.location = ui.item.url
  }

});

Вот пример.

person miron    schedule 06.08.2014

Вы можете использовать событие select, а затем использовать простой window.location.href, чтобы направить пользователя на ту ссылку, которую он когда-либо нажимал.

Что-то в этом роде.

$( "#input" ).on( "autocompleteselect", function( event, ui ) {
    var label = ui.item.value;

    window.location.href = link;
});

Это просто сырой непроверенный пример.

person David Jones    schedule 06.08.2014