0
KendoUI 데이터 소스를 여러 곳에서 사용하고 있으며, 일부는 컨트롤에 바인딩되어 있습니다. 이 호출은 원격 웹 서비스에 대한 것이고 꽤 비싸기 때문에 먼저 실행하려고합니다.KendoUI 데이터 소스가 컨트롤에 바인딩되지 않은 경우
처음으로 데이터가 필요한 것은 컨트롤에 바인딩되지 않은 상황입니다.
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;
}
원격 웹 서비스가 호출되고 예상대로 데이터를 반환하는 것을 볼 수 있습니다. 그러나 DS의 data() 속성은 항상 데이터를 반환하지 않습니다.
Kendo 컨트롤에 동일한 데이터 소스를 바인딩하면 데이터가 DS에 채워집니다.
행운이 없습니다. 가져 오기 기능은 DS가 바인딩 될 때까지 호출되지 않습니다. – keitn
이상하게 - 어떤 버전을 사용하고 있습니까? 이 데모를 확인하십시오 : http://jsbin.com/AnoXini/4/edit (가져 오기, 77 개의 레코드 보여주기) 및이 http://jsbin.com/AnoXini/3/edit (읽기, 0 레코드보기)와 비교 –
I 최신 빌드를 사용하고 있습니다 (2013.3.1316). 필자가 보았던 샘플과의 유일한 차이점은 예를 들어 GET 일 때 HTTP 게시를하고 있다는 것입니다. – keitn