dojo 데이터 격자에 콤보 상자 구성 요소가 있습니다.JSON 데이터를 반환하는 URL을 호출하여 dijit.form.ComboBox를 populdate하는 방법은 무엇입니까?
var tacStore = {items : []}; Tac
그리고 단추를 클릭하면 아래 코드를 사용하여 콤보 상자를 채우려 고합니다.
function loadTimeZones() {
dojo.xhrGet({
//url: "/AAORPCAdapterServicesWeb/RPCAdapter/httprpc/TimeZoneService/getTimeZones",
url: "/AAORPCAdapterServicesWeb/RPCAdapter/httprpc/DeliverableService/getAllTacs",
handleAs:"json",
load: createTimeZoneStore,
error: function(error,ioargs){
console.log(error);
}
});
return false;
}
function createTimeZoneStore(response) {
console.log("createTimeZoneStore::response:: "+response);
if (response.result != null) {
var timezone = [];
for(var resultCounter=0; resultCounter<response.result.length;resultCounter++)
{
timezone[resultCounter] = {};
timezone[resultCounter]['name']=response.result[resultCounter];
console.log("createTimeZoneStore::response.result[resultCounter]:: "+response.result[resultCounter]);
}
console.log("createTimeZoneStore::tacStore::tacs: "+tacStore);
tacstore= new dojo.data.ItemFileWriteStore({data:{items:timezone}});
}
return false;
}
응답 받고 있습니다. 그러나 값은 콤보 박스에 표시되지 않습니다. 그리고 콤보 상자를 클릭하면 this.fetch와 같은 오류가 함수가 아닙니다.
를 사용, 그것은 새로운 콤보를 만드는 것, 하지만 내 경우에는 콤보 상자가 이미 만들어져 있습니다. 다른 방법으로 상점을 설정해야합니다. –
내 대답은 이미 두 경우 모두 관련이 있습니다. 어쨌든, 어떻게 만들어 졌습니까? 마크 업 또는 프로그래밍 방식으로? – Elad