![](/img/trans.png)
[英]How to add database data to Jquery control dynamically in ASP.NET?
[英]How to append data to JQuery control variable dynamically in ASP.NET?
我想在ASP.net的Jquery日歷控件中顯示報告,因為我需要從數據庫檢索數據。我編寫了這樣的服務
[WebMethod]
public static string GetData()
{
Horticulture h = new Horticulture();
return h.GetProjectedYield().GetXml();
}
在這里,我將數據集轉換為xml,然后按如下方式在javascript中調用該函數
$(document).ready(function () {
var response;
$.ajax({
type: 'POST',
dataType: 'json',
contentType: 'application/json',
url: 'ProjectedYieldCalender.aspx/GetData',
data: '{}',
success:
function (res) {
var xmlDoc = $.parseXML(res.d);
var xml = $(xmlDoc);
var customers = xml.find("Table1");
}
});
然后我需要將檢索到的數據綁定到JQuery Calender控件,如下所示
$('#calendar').fullCalendar({
header: {
left: 'prev,next today',
center: 'title',
right: 'month,basicWeek,basicDay'
},
//defaultDate: '2014-08-12',
editable: true,
eventLimit: true, // allow "more" link when too many events
events: [
for(var i=0; i<customers.length; i++)
{
"{"
"title:" +customers[i].Column1+","
"start:"+customers[i].Column3
"}"
if(i!=customers.length-1)
{
","
}
}
]
});
});
但是我沒有得到正確的輸出(無法找到),但是我需要如下生成
$(document).ready(function() {
$('#calendar').fullCalendar({
defaultDate: '2014-11-12',
editable: true,
eventLimit: true, // allow "more" link when too many events
events: [
{
title: 'All Day Event',
start: '2014-11-01'
},
{
title: 'Long Event',
start: '2014-11-07',
end: '2014-11-10'
},
{
id: 999,
title: 'Repeating Event',
start: '2014-11-09T16:00:00'
},
{
id: 999,
title: 'Repeating Event',
start: '2014-11-16T16:00:00'
},
{
title: 'Conference',
start: '2014-11-11',
end: '2014-11-13'
},
{
title: 'Meeting',
start: '2014-11-12T10:30:00',
end: '2014-11-12T12:30:00'
},
{
title: 'Lunch',
start: '2014-11-12T12:00:00'
},
{
title: 'Meeting',
start: '2014-11-12T14:30:00'
},
{
title: 'Happy Hour',
start: '2014-11-12T17:30:00'
}
]
});
});
誰能讓我知道怎么做? 我要去哪里錯了?
簡單點-不要在Web服務中返回XML,而是返回事件對象列表。
public class CEvent
{
public int id {get;set;}
public string title {get;set;}
public DateTime start {get;set;}
}
[WebMethod]
public List<CEvent> GetData()
{
return new List<CEvent>{...};
}
$(document).ready(function () {
var response;
$.ajax({
type: 'POST',
dataType: 'json',
contentType: 'application/json',
url: 'ProjectedYieldCalender.aspx/GetData',
data: '{}',
success:
function (data) {
var eventList = data;
// OR var eventList = data.d
initCalendar(eventList);
}
});
function initCalendar(eventList){
$('#calendar').fullCalendar({
defaultDate: '2014-11-12',
editable: true,
eventLimit: true, // allow "more" link when too many events
events: eventList
});
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.