![](/img/trans.png)
[英]KendoUI Grid/Datasource. When “create”, empty POST request, no parameters
[英]KendoUI Datasource when not bound to any controls
我在幾個地方都使用KendoUI數據源,有些綁定到控件,有些則沒有。 該調用是針對遠程Web服務的,對於我想先執行它的某些服務可能會非常昂貴。
我第一次需要數據是針對未綁定到控件的情況。
I call a function similar to this to create the datasouce:
function BuildDS() {
var DS = new kendo.data.DataSource({
transport: {
read: {
url: "../WS/GetData",
dataType: 'json',
contentType: "application/json; charset=utf-8",
type: "POST"
}
}
});
return DS;
}
然后,我有了另一個遍歷DS的函數。
function GetName(DSIn, fieldID) {
DSIn.read();
var visname = "";
$.each(DSIn.data(), function (idx, vis) {
if (vis.FIELD_ID == fieldID) {
visname = vis.DISPLAY_LABEL;
return false;
}
});
return visname;
}
我可以看到遠程Web服務正在被調用並按預期返回數據。 但是,DS的data()屬性始終不返回任何數據。
當我將同一數據源綁定到Kendo控件時,數據將填充到DS中。
從服務器檢索數據是異步操作,因此在進行迭代時,此調用尚未完成。 您應該改用fetch
:
dataSource.fetch(function(){
var data = this.data();
console.log(data.length);
// now you can iterate over data
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.