[CLOSED] Change event for numberfield column in grid panel fired only on lost focus.

  1. #1

    [CLOSED] Change event for numberfield column in grid panel fired only on lost focus.

    Hi,

    I had posted a query related to editable grid plugin. http://forums.ext.net/showthread.php...9754#post69754

    I tried using the validateevent for gridpanel as per the link provided. But the event was not fired on change event of numberfield column. Can you please a code snippet for using validateevent?

    Scenario: Validate the numberfield text on change.

    <ext:gridpanel id="gpAIG" runat="server" striperows="true" anchorhorizontal="100%"
        trackmouseover="true" clickstoedit="1" autodatabind="true" autoheight="true"
        storeid="AIGItemGridStore" autoexpandcolumn="AIGShortDesc" autowidth="true">
                        <Plugins>
                            <ext:EditableGrid ID="egAIG" runat="server" Enabled="true">
                        </Plugins>
                        <ColumnModel ID="grdAIGColModel" runat="server">
                            <Columns>
                                <ext:Column ColumnID="AIGLineNum" Header="LineNo" DataIndex="LineNum">
                                </ext:Column>                           
                                <ext:Column ColumnID="AIGIssuedQty" Header="IssuedQty" DataIndex="IssuedQty" Align="Right">
                                </ext:Column>
                                <ext:Column ColumnID="AIGOpenQty" Header="OpenQty" DataIndex="OpenQty" Hidden="false"
                                    Align="Right">
                                </ext:Column>
                                <ext:Column ColumnID="AIGIssueQty" Header="IssueQty" DataIndex="IssueQty" Hidden="true">
                                    <Editor>
                                        <nxtwc:NxtNumberField runat="server" ID="txtAIGIssueQty" Width="100" DataIndex="IssueQty"
                                            AllowBlank="false" AutoDataBind="true">
                                            <Listeners>
                                                <Change Handler="ActionItemGrid.ValidateIssueQty(#{gpAIG},#{txtAIGIssueQty},newValue,oldValue);"  />
                                            </Listeners>                                                                                         
                                        </nxtwc:NxtNumberField>
                                    </Editor>
                                </ext:Column>                            
                            </Columns>
                        </ColumnModel>
                        <Listeners>                         
                        </Listeners>
                        <SelectionModel>
                            <ext:RowSelectionModel ID="AIGRowSelectionModel" runat="server" SingleSelect="true" />
                        </SelectionModel>
                        <View>
                            <ext:GridView ID="AIGGridView" runat="server" MarkDirty="false" ForceFit="true" />
                        </View>
                        <Listeners>
                            <Added Handler="this.enableColumnHide = false;" />
                            <ValidateEdit Handler="ValidateQty(#{gpAIG})" />
                        </Listeners>
                    </ext:gridpanel>
    Thanks
    Anulekha
    Last edited by Daniil; Dec 05, 2011 at 5:41 PM. Reason: [CLOSED]
  2. #2
    Hi,

    Quote Originally Posted by AnulekhaK View Post
    I tried using the validateevent for gridpanel as per the link provided.
    Please clarify where do you see using the ValidateEdit event in the link I provided?

    ValidateEdit event doesn't work in a case with EditableGrid.

    You can try to use a common field validation.

    Example
    <%@ Page Language="C#" %>
     
    <%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
    <script runat="server">
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!X.IsAjaxRequest)
            {
                this.Store1.DataSource = new object[] 
                { 
                    new object[] { 1 },
                    new object[] { 2 },
                    new object[] { 3 }
                };
                this.Store1.DataBind();
            }
        }
    </script>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
        "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title>Ext.Net Example</title>
    
        <script type="text/javascript">
            var myValidator = function (v) {
                if (parseInt(v) !== 5) {
                    return "Only 5 is valid";
                }
                return true;
            };
        </script>
    </head>
    <body>
        <form runat="server">
            <ext:ResourceManager runat="server" />
            <ext:GridPanel ID="GridPanel1" runat="server" AutoHeight="true">
                <Store>
                    <ext:Store ID="Store1" runat="server">
                        <Reader>
                            <ext:ArrayReader>
                                <Fields>
                                    <ext:RecordField Name="test" />
                                </Fields>
                            </ext:ArrayReader>
                        </Reader>
                    </ext:Store>
                </Store>
                <ColumnModel runat="server">
                    <Columns>
                        <ext:Column Header="Test" DataIndex="test">
                            <Editor>
                                <ext:NumberField runat="server" Validator="myValidator" />
                            </Editor>
                        </ext:Column>
                    </Columns>
                </ColumnModel>
                <Plugins>
                    <ext:EditableGrid runat="server" />
                </Plugins>
            </ext:GridPanel>
        </form>
    </body>
    </html>

Similar Threads

  1. [CLOSED] Panel Show event not fired
    By feanor91 in forum 2.x Legacy Premium Help
    Replies: 6
    Last Post: May 03, 2012, 8:41 AM
  2. grid panel change data from column
    By cbu in forum 1.x Help
    Replies: 2
    Last Post: Jan 03, 2012, 11:50 AM
  3. Replies: 1
    Last Post: Nov 28, 2011, 2:40 PM
  4. How to get row focus/selection lost event?
    By reezvi in forum 1.x Help
    Replies: 10
    Last Post: Jul 31, 2011, 8:41 PM
  5. [CLOSED] Filter focus lost after grid refresh
    By yobnet in forum 1.x Legacy Premium Help
    Replies: 1
    Last Post: Sep 15, 2010, 9:36 AM

Posting Permissions