2011-02-07 230 views
1

在jquery中,當我選擇匹配的記錄時,我想只允許將所選記錄中的數字放置在文本框中。我想知道如何在自動完成中執行此操作。例如JQuery自動完成

當我在文本框中鍵入75

它給我的結果如下面

7510- Synaptic 
7512-Allied 
7513-King 

當我選擇特定的行,在入圍值的數量應僅被放置在文本框中。

-- > 7513-King 

應放置在文本框中。

回答

4

您是否正在使用jQuery UI自動完成功能?如果是這樣,傳入具有標籤和值屬性的Json對象的初始數組。標籤文本將顯示在自動完成下拉菜單中,但該值在選擇事件中可用。

var data = [ 
      { label: "7510-Synaptic", value: 7510 }, 
      { label: "7512-Allied", value: 7512 }, 
      { label: "7513-King", value: 7513 } 
     ]; 

$("#theAutocomplete").autocomplete({ 
    delay: 0, 
    source: data, 
    select: function(event, ui) { 
     // selected value is at ui.item.value; 
     // label is at ui.item.label 
    } 
}). 
0

這應該這樣做,雖然正則表達式也是有用的,也許更準確。

parseInt('7513-King'); 
0

這可以用原來的獨立的jQuery autocompleter插件,仍然是圍繞完成(並積極開發):

http://code.google.com/p/jquery-autocomplete/

你將不得不使用的選項

onItemSelect 

在演示中有一個例子(http://code.google.com/p/jquery-autocomplete/source/browse/demo/index.html)