如何使用jquery autosuggest重定向到另一个URL?

时间:2012-02-03 08:00:48

标签: javascript jquery redirect autocomplete autosuggest

所以我一直在互联网上搜索一个我认为常见且容易的解决方案,但似乎我浏览的所有链接要么超出我的需要,要么只是釉面我需要并希望了解的部分。

我正在开发一个网站,我希望有一个用户可以输入状态的字段,它会自动提供可能的状态,当用户选择状态时,它会将页面重定向到另一个网址。所以:如果他们选择“阿拉斯加,AK”,他们会被引导到“http://.../states/alaska”

从我搜索过的所有内容来看,jquery UI autosuggest remote source似乎最接近我的需要。我喜欢我不需要浏览数据库,值在“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 );
            }
        });
    });

我不需要它来显示日志,如何重新格式化以使页面在选中时或用户点击提交按钮时重定向?

1 个答案:

答案 0 :(得分:1)

您需要使用其中一个

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 );
            }