我有一個存儲在數據庫中的項目列表。按鍵動態搜索結果
我使用foreach列出的物品返回一個複選框每個項目,像這樣旁邊:
var db = Database.Open("database");
var sql = "SELECT * from table";
var result = db.Query(sql);
...
@{foreach (var user in result) {
<tr><td>@table.attribute</td> <td>@table.secondAttribute @table.thirdAttribute</td>
<td><input type="checkbox" name="attribute" value="attribute" /></td></tr>
我想擁有的功能是一個當用戶輸入一個字母時,該文本框會根據用戶輸入的字符限制我的foreach中列出的項目數量。所以我嘗試過使用JQuery autoComplete模塊,但在這種情況下我不完全確定如何使用它,或者即使可能。
所以我說:
$(function(){
$('#name').autocomplete({source:'getUsers'});
});
... 輸入他們的名字:
然後在getUsers:
@{
var db = Database.Open("database");
var term = Request.QueryString["term"] + "%";
var sql = "SELECT * from table where attribute LIKE @0 OR secondAttribute LIKE @0 OR thirdAttribute LIKE @0";
var result = db.Query(sql, term);
var data = result.Select(p => new{label = p.attribute + " " + p.secondAttribute});
Json.Write(data, Response.Output);
}
這,當然,只是檢索數據對於文本框並且根本不分隔返回的複選框。有什麼辦法可以做到這一點?
用戶的完整列表需要多長時間?您可能會考慮將您的服務器端代碼保持原樣並使用客戶端代碼動態顯示和隱藏行。 – nnnnnn 2012-03-14 20:43:15
@nnnnnn這將是理想的,實際上,可以想到它。這份清單不會太長,但希望有所增長。我怎麼能這樣做? – 2012-03-14 20:47:03