2016-03-17 26 views
1

基于此thread,我试图从编辑的行/单元中获取旧值和新值。但总是rowIndex为空。我怎样才能得到这个值?还有另外一种方法在服务器端捕获这些信息?Ext.net行编辑旧值和新值

这是我的网格。谢谢!

<ext:GridPanel runat="server" 
             Frame="true" 
             Layout="FitLayout" 
             MarginSpec="5 0 5 0" 
             ID="Janelas01"> 
             <Store> 
              ... 
              </ext:Store> 
             </Store> 
             <ColumnModel runat="server"> 
              <Columns> 
               ... 
               <ext:Column runat="server" 
                DataIndex="Meta" 
                Text="Meta/H" 
                Flex="1" 
                Align="Center"> 
                <Editor> 
                 <ext:NumberField 
                  runat="server" 
                  AllowBlank="false" 
                  AllowDecimals="true" 
                  Step="0.01"> 
                 </ext:NumberField> 
                </Editor> 
               </ext:Column> 
              </Columns> 
             </ColumnModel> 
             <SelectionModel> 
              <ext:RowSelectionModel runat="server" /> 
             </SelectionModel> 
             <Plugins> 
              <ext:RowEditing runat="server"> 
               <Listeners> 
                <BeforeEdit Handler="this.oldValues = Ext.net.clone(this.grid.getStore().getAt(rowIndex).data);" /> 
               </Listeners> 
               <DirectEvents> 
                <Edit OnEvent="GridPanel_AfterEdit"> 
                 <ExtraParams> 
                  <ext:Parameter Name="old" Value="this.oldValues" Mode="Raw" Encode="true" /> 
                  <ext:Parameter Name="new" Value="this.grid.getStore().getAt(rowIndex).data" Mode="Raw" Encode="true" /> 
                 </ExtraParams> 
                </Edit> 
               </DirectEvents> 
              </ext:RowEditing> 
             </Plugins> 
            </ext:GridPanel> 

回答

0

它已经解决了。致信@fabricio.murta

我只是改变这段代码:

<Plugins> 
      <ext:RowEditing runat="server"> 
       <Listeners> 
        <BeforeEdit Handler="this.oldValues = Ext.net.clone(e.record.data);" /> 
       </Listeners> 
       <DirectEvents> 
        <Edit OnEvent="OnAfterEdit"> 
         <ExtraParams> 
          <ext:Parameter Name="old" Value="this.oldValues" Mode="Raw" Encode="true" /> 
          <ext:Parameter Name="new" Value="e.record.data" Mode="Raw" Encode="true" /> 
         </ExtraParams> 
        </Edit> 
       </DirectEvents> 
      </ext:RowEditing> 
     </Plugins>