2013-11-15 37 views
-2

我有一個簡單的下拉列表填充數字1到1000.當我單擊下拉列表,我知道我想要什麼數字時,我單擊列表,然後鍵入。說850.下拉列表自動帶我到850,我可以去做我的生意。Dropdownlist雙數字輸入行爲

當我使用雙位數時會遇到麻煩。如果我在框中輸入「11」,我會得到「10」。當使用多個相同的數字時,它將框移動到起始數字的下一個迭代。如果我輸入「111」,我會得到11,「1111」我會得到12,「11111」我會得到13,依此類推,直到沒有更多。

這是可以通過代碼更改的東西,還是瀏覽器的問題?我曾嘗試在Firefox,Chrome和IE中獲得相同的結果。我希望能夠鍵入「11」,並獲得項目11,或「22」,並獲得項目22等...

這是一個假設的情況,並在我的真實應用下拉列表中填充各種號碼變化,用戶可能會或可能不知道他們正在尋找哪個號碼。文本框聽起來不合適。

編輯:

的.aspx:

<asp:DropDownList ID="ddlTesting" runat="server" /> 

的.cs:

protected override void Page_Load(object sender, EventArgs e) 
    { 
     if (!IsPostBack) 
     { 
      for (int i = 0; i < 1000; i++) 
      { 
       ddlTesting.Items.Add(new ListItem(i.ToString(), i.ToString())); 
      } 
     } 
    } 
+0

你能顯示一些代碼嗎? – meda

+0

@meda添加了代碼。 – Keith

+0

IE 8.0.6001.18702沒有這個問題。如果你輸入兩位數字,那就是你得到的。也許你想降級到以前的IE版本,或者有些瀏覽器可以正確響應。或者也許你在同一時間找到了解決方案? – sukram

回答

0

爲什麼不使用類似jQuery Autocomplete?標準下拉列表不支持您正在查找的行爲。

+0

我可以用文本框做類似的練習,但問題在於用戶不知道他想要的數字。如果有五個數字{402,444,789,790,962},自動填充框不會有太大幫助。一個下拉列表和自動完成是可以接受的,但我希望保持最小。多個框往往會混淆我的用戶。感謝您的建議。如果不支持,則不支持。 – Keith

+0

AutoComplete有一個「組合框」選項,其功能類似於提前輸入下拉列表。這可能對你更有幫助。 – Scott