2013-03-07 26 views
0

我有一個小問題:我在asp.net mvc4工作,我需要修復這種情況:如何在asp.net中設置與文本框字符串相關的下拉列表值?

我有一個帶有文本框和多個下拉列表的頁面。這些下拉列表的值與用戶放入文本框的內容相關。 IE:

如果在文本框中有'foo'我想ddl1'A'ddl2'1'ddl3'True'進行設置。

作爲文本框包含主鍵,這些值綁定在一起到sql數據庫中。所以我有這樣一個數據庫:

'foo' (key) , 'A', '1', 'True' 
'bar'  , 'B', '1', 'False' 
'qux'  , 'C', '2', 'True' 

等等。

我只想根據文本框中寫的內容,頁面將ddls設置爲對應的值。

+1

你能告訴我們你自己試過了什麼,IE:顯示一些代碼? – 2013-03-07 12:35:55

回答

0

嘗試Knockout或其他JavaScript MVVM綁定框架。

您必須將您的(當前數據庫)數據轉儲爲JavaScript,然後將其綁定到正確的元素。

在這裏看到: http://knockoutjs.com/

0

取決於你有多少行在DB,你應該做的第一件事就是讓所有的人都和緩存數據,因此你不必爲每一個數據庫請求DDL。

然後您需要決定爲文本框捕獲哪個事件。我建議你使用KeyUp(過濾Tab或Enter)。

在這個事件處理程序中,您可以更改第一個ddl的SelectedValue並顯式激發它的「SelectedValueChanged」(檢查是否必須顯式完成)。

這樣你可以級聯你所有的ddls。

我不確定存儲值的最佳方式是什麼。你既可以創建一個處理關係的類,也可以使用多個列表(非常偶然地)。第一個肯定會是更好的解決方案。

相關問題