2012-06-25 16 views
4

我有这个代码实现,我喜欢它是多么直接,因为我打算将ALOT添加到源 - 但是对于我的生活,我无法弄清楚如何添加选定的一条链接。jQuery自动完成>选择>链接

EG>开始键入>自动填充工作>选择>进入该网址

目前代码:

<!DOCTYPE html> 
<html> 
<head> 
    <link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script> 

    <script> 
    $(document).ready(function() { 
    $("input#autocomplete").autocomplete({ 
    source: ["NYC", "LA", "Philly", "Chitown", "DC", "SF", "Peru"] 
}); 
    }); 
    </script> 
</head> 
<body style="font-size:62.5%;"> 

<input id="autocomplete" /> 

</body> 
</html> 

,我发现这个在这里的几个讨论,但没有代码的建议已经工作了。如何添加与上述值关联的网址;如果我可以保持相同的语法并接近值,只要添加,我就会喜欢; EG:“秘鲁” www.peru.com

回答

12

你可以一个url属性源数组中添加到每个对象,然后设置window.location到该URL,当用户选择一个项目:

$(document).ready(function() { 
    $("input#autocomplete").autocomplete({ 
     source: [ 
      { value: "NYC", url: 'http://www.nyc.com' }, 
      { value: "LA", url: 'http://www.la.com' }, 
      { value: "Philly", url: 'http://www.philly.com' }, 
      { value: "Chitown", url: 'http://www.chitown.com' }, 
      { value: "DC", url: 'http://www.washingtondc.com' }, 
      { value: "SF", url: 'http://www.sanfran.com' }, 
      { value: "Peru", url: 'http://www.peru.com' } 
     ], 
     select: function (event, ui) { 
      window.location = ui.item.url; 
     } 
    }); 
}); 
+0

AH。对不起,他们不会是确切的姓名> .com;有些会是“NYC”> www.samplenotnyc.com - 我只是希望在代码中的值附近有更新的URL。 –

+0

那么你能改变'source'数组吗?我不确定你的意思是“接近价值” –

+0

其实我想我明白你的意思。请参阅最新的答案。 –