2012-06-25 18 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

其實我想我明白你的意思。請參閱最新的答案。 –