2011-12-27 2 views
0

나는 아주 기본적인 것을 놓치고 있습니다. 내 comboxbox는 나타나지 않습니다. 누군가 다음 코드를보고 제게 무엇을 놓치고 있는지 말해 주실 수 있습니다. 유형을 선택하고 ComboBox를 사용해 보았습니다. 도장-1.5ComboBox가 DataGrid에서 작동하지 않습니다.

var layout4 = 
[ 
{ field: "abbr", name: "Abbreviation", width: 10 }, 
{ field: "name", name: "Name", width: 10 }, 
{ field: "capital", name: "Capital", width: '10'}, 
{ field: "combo", name: "combo", width: 10, 
    type: dojox.grid.cells.Select, 
    options: [ "new", "read", "replied" ], 
    editable:true 
} 

]; 

var store4 = { identifier: 'abbr', 
label: 'name', 
items: [ 
{ abbr:'ec', name:'Ecuador',   capital:'Quito', combo:'' }, 
{ abbr:'eg', name:'Egypt',    capital:'Cairo', combo:''}, 
{ abbr:'sv', name:'El Salvador',  capital:'San Salvador', combo:''}, 
{ abbr:'gq', name:'Equatorial Guinea', capital:'Malabo', combo:''}, 
{ abbr:'er', name:'Eritrea',   capital:'Asmara', combo:'' }, 
{ abbr:'ee', name:'Estonia',   capital:'Tallinn', combo:''}, 
{ abbr:'et', name:'Ethiopia',   capital:'Addis Ababa', combo:'' } 
    ]}; 

storeData = new dojo.data.ItemFileReadStore(
      { data:store4} 
     ); 
    // create a new grid: 
    var grid4 = new dojox.grid.DataGrid({ 
     query: { abbr: '*' }, 
     store: storeData, 
     clientSort: true, 
     rowSelector: '20px', 
     structure: layout4 
    }, document.createElement('div')); 

    // append the new grid to the div "gridContainer4": 
    dojo.byId("gridContainer4").appendChild(grid4.domNode); 

    // Call startup, in order to render the grid: 
    grid4.startup(); 

답변

0

당신이 하나 appendChild()를 사용하여 한 긴 줄을 교체하십시오 :

grid4.placeAt("gridContainer4"); 

귀하의 코드가 아니라 스크램블과 디버깅에 약간 하드를의 전체를 보지 않고있다. 콘솔에 오류가 있습니까? JSFiddle에 완전한 예를 게시 할 수 있습니까?

+0

http://jsfiddle.net/nRMrA/17/ 그것은 jsfiddle의 첫 사용은, 내가 거기에 붙여 넣기, 아무것도 showinf 없지만 당신이 코드를 볼 수있다! 브라우저에서 실행할 때 그리드가 올바르게 표시됩니다. 작동하지 않는 콤보 상자 부분 일뿐입니다! – zaini

0

이유는 내가 ItemFileReadStore를 사용하고 있었고 상점에있는 항목을 편집 할 수 없기 때문에 콤보 박스가 나타나지 않았기 때문입니다. WriteStore를 사용하면이 문제가 해결됩니다. 당연히 readotre를 사용하는 것은 멍청했다.

이제 canEdit이 구현 된 그리드에 combobox를 표시하려는 다른 문제가 있습니다.하지만 다른 질문입니다.

관련 문제