嗨,这是我的dGrid html的编码:
<table id="Assign_Segments" class="dGrid"
dojoType="dgrid.GridFromHtml" style="width:700px">
<tbody>
<tr>
<th data-dgrid-column="{field:'InputCell', sortable:true}">
<bean:message key="IDD_POPSEG_PAGE.IDC_LBL_INPUTCELL" bundle="flowchart"/>
</th>
<th data-dgrid-column="dgrid.Editor({field:'Segment',
sortable:false, widgetArgs: segmentSelectOptions}, dijit.form.Select, 'click')">
<bean:message key="IDD_POPSEG_PAGE.IDC_LBL_SEGNAME" bundle="flowchart"/></th>
</tr>
</tbody>
</table>
我已经使用Folowing将它们连接起来:
dojo.global.segmentSelectOptions = function(object){
var opts = [{
'label': 'seg1',
'value': 'seg1'
}, {
'label':'New Segment...',
'value':'new'
}, {
'label': 'seg2',
'value': 'seg2'
}];
return { onChange: function(newValue){
if(newValue=='new'){
var dlg = dijit.getWidget('CreateFolder','dijit.Dialog');
dlg.show();
}
},
class: "fullWidthWidget",
options: opts};
};
如您所见,此代码将打开一个对话框。现在,当我按下对话框上的特定按钮并根据对话框中的输入更改单元格的值时,我想访问我在dgrid
中选择的单元格。如何从该功能访问单元格?问题是它可以是 dgrid 中的任何单元格,他们没有 id 可以使用dijit.byId();
请帮帮我!
解决方案是从对话框的 hide() 向更改网格的函数提供回调。但是,在使用商店的 put() 语句之前,您需要使用此行:
grid.dirty = {};