我在这里粘贴我的代码。
<script type="text/javascript">
$(function() {
var items = [{text: 'Onion', value: '1'},
{text: 'Ketchup', value: '2'},
{text: 'Mayonnaise', value: '3'},
{text: 'Pickles', value: '4'},
{text: 'Tomato', value: '5'},
{text: 'Patatoes', value: '6'},
{text: 'Sausage', value: '7'},
{text: 'Lettuce', value: '8'},
{text: 'Pepper', value: '9'}
];
$('#myCheckList').checkList({
listItems: items,
onChange: selChange
});
function selChange(){
var selection = $('#myCheckList').checkList('getSelection');
$('#selectedItems').text(JSON.stringify(selection));
}
});
</script>
我想在
var items=
中,它将采用一种方法,即getItems()
,该方法写在ItemDAL.cs(DAL层)中,并且它正在从数据库中获取所有项目列表。有人可以建议我吗? 最佳答案
创建对象的C#表示形式:
public class SelectItem
{
public string Value { get; set; }
public string Text { get; set; }
}
然后是网页方法后面的页面:
[WebMethod]
public static List<SelectItem> GetItems()
{
var items = new List<SelectItem>();
// look up db items and populate from your Dal
return items;
}
然后你的js
<script type="text/javascript">
$(function() {
var items;
$.ajax({
type: "POST",
url: "Default.aspx/GetItems",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
items = msg.d;
}
});
$('#myCheckList').checkList({
listItems: items,
onChange: selChange
});
function selChange(){
var selection = $('#myCheckList').checkList('getSelection');
$('#selectedItems').text(JSON.stringify(selection));
}
});
</script>