Как использовать автозаполнение jquery для перенаправления на другой URL? - PullRequest
1 голос
/ 03 февраля 2012

Так что я искал в интернете решение, которое, как я думал, будет распространено и легко, но кажется, что все ссылки, которые я просмотрел, либо больше, чем мне нужно, или они просто застекляютчасти, которые мне нужны и которые я хочу понять.

Я разрабатываю сайт, на котором я хотел бы иметь поле, в котором пользователи могут вводить состояние, оно будет автоматически предлагать возможные состояния, а когда пользователь выбирает состояние, оноперенаправить страницу на другой URL.Итак: если они выбирают «Аляска, АК», они направляются на «http: //.../states/alaska»

Из всего, что я просматривал, jQuery UI с автоматическим поиском удаленногоИсточник , похоже, ближе всего к тому, что мне нужно.Мне понравилось, что мне не нужно проходить через базу данных, значения находятся в файле «search.php».

В файле search.php значения вставляются как:

$q = strtolower($_GET["term"]);
if (!$q) return;
$items = array(
"Great Bittern"=>"Botaurus stellaris",
"Little Grebe"=>"Tachybaptus ruficollis",
"Black-necked Grebe"=>"Podiceps nigricollis",
"Little Bittern"=>"Ixobrychus minutus",
...

Я проверял, что я могу изменить здесь значения:

$q = strtolower($_GET["term"]);
if (!$q) return;
$items = array(
"Alabama, AL"=>"http://.../states/alabama",
"Alaksa, AK"=>"http://.../states/alaska",
"Arizona, AZ"=>"http://.../states/arizona",
...

В HTML-коде:

$(function() {
        function log( message ) {
            $( "<div/>" ).text( message ).prependTo( "#log" );
            $( "#log" ).scrollTop( 0 );
        }

        $( "#birds" ).autocomplete({
            source: "search.php",
            minLength: 2,
            select: function( event, ui ) {
                log( ui.item ?
                    "Selected: " + ui.item.value + " aka " + ui.item.id :
                    "Nothing selected, input was " + this.value );
            }
        });
    });

Мне не нужно, чтобы показатьlog, как мне отформатировать это, чтобы страница перенаправлялась при выборе или когда пользователь нажимал кнопку отправки?

1 Ответ

1 голос
/ 03 февраля 2012

Вам нужно будет использовать один из этих

window.location.href = "new link";

или

window.location.replace("new link");

Может быть, так

select: function( event, ui ) {
                log( ui.item ?
                    window.location.href = ui.item.value :
                    "Nothing selected, input was " + this.value );
            }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...