[CLOSED] Get Grid Selected Cell Value

  1. #1

    [CLOSED] Get Grid Selected Cell Value

    Hi -

    I would like to get the selected cell value by index or field name in the selected row in grid panel. And, I would like to know what would be the equivalent javascript code to do that on a button click ?

    Thanks


    Venu
    Last edited by Daniil; Jan 21, 2015 at 1:01 PM. Reason: [CLOSED]
  2. #2
    <!DOCTYPE html>
    <html>
    <head id="Head1" runat="server">
        <script type="text/javascript">
            var AlertRecordName = function () {
                var selectedRecord = App._grd.getSelectionModel().lastSelected;
    
                if (selectedRecord != null) {
    
                    alert(selectedRecord.data.Name);
                }
            }
        </script>
    </head>
    <body>
        <ext:ResourceManager runat="server" ScriptMode="Debug" />
        <ext:Button Text="Alert Recod Name" runat="server">
            <Listeners>
                <Click Handler="AlertRecordName();" />
            </Listeners>
        </ext:Button>
        <br />
        <ext:GridPanel ID="_grd" runat="server" Title="Records" Frame="false" Width="500" Height="500">
            <Store>
                <ext:Store AutoLoad="true" ID="_str" runat="server">
                    <Proxy>
                        <ext:AjaxProxy Url="~/Example/LoadFakeRecords/">
                            <ActionMethods Read="POST" />
                            <Reader>
                                <ext:JsonReader RootProperty="data" />
                            </Reader>
                        </ext:AjaxProxy>
                    </Proxy>
                    <Model>
                        <ext:Model IDProperty="ID" runat="server">
                            <Fields>
                                <ext:ModelField Name="ID" Type="String" />
                                <ext:ModelField Name="Name" Type="String" />
                            </Fields>
                        </ext:Model>
                    </Model>
                </ext:Store>
            </Store>
            <ColumnModel runat="server">
                <Columns>
                    <ext:Column Text="ID" DataIndex="ID" runat="server" />
                    <ext:Column Text="Name" DataIndex="Name" runat="server" />
                </Columns>
            </ColumnModel>
        </ext:GridPanel>
    </body>
    </html>
    namespace SandBox.Controllers
    {
        public class ExampleController : System.Web.Mvc.Controller
        {
            public ActionResult Index()
            {
                return View();
            }
    
            public StoreResult LoadFakeRecords()
            {
                List<Person> lst = new List<Person>();
    
                for (int index = 0; index < 15; index++)
                {
                    lst.Add(new Person
                    {
                        ID = index,
                        Name = "Name" + index
                    });
                }
    
                return new StoreResult(lst, lst.Count());
            }
    
            [Serializable]
            public class Person
            {
                public int ID { get; set; }
    
                public string Name { get; set; }
            }
        }
    }
  3. #3
    The field name is hard coded, i want something by the index or field name in a variable.
  4. #4
    <!DOCTYPE html>
    <html>
    <head id="Head1" runat="server">
        <script type="text/javascript">
            var AlertRecordName = function () {
    
                var fieldName = "Name";
    
                var selectedRecord = App._grd.getSelectionModel().lastSelected;
    
                if (selectedRecord != null) {
    
                    alert(selectedRecord.data[fieldName]);
                }
            }
        </script>
    </head>
    <body>
        <ext:ResourceManager runat="server" ScriptMode="Debug" />
        <ext:Button Text="Alert Recod Name" runat="server">
            <Listeners>
                <Click Handler="AlertRecordName();" />
            </Listeners>
        </ext:Button>
        <br />
        <ext:GridPanel ID="_grd" runat="server" Title="Records" Frame="false" Width="500" Height="500">
            <Store>
                <ext:Store AutoLoad="true" ID="_str" runat="server">
                    <Proxy>
                        <ext:AjaxProxy Url="~/Example/LoadFakeRecords/">
                            <ActionMethods Read="POST" />
                            <Reader>
                                <ext:JsonReader RootProperty="data" />
                            </Reader>
                        </ext:AjaxProxy>
                    </Proxy>
                    <Model>
                        <ext:Model IDProperty="ID" runat="server">
                            <Fields>
                                <ext:ModelField Name="ID" Type="String" />
                                <ext:ModelField Name="Name" Type="String" />
                            </Fields>
                        </ext:Model>
                    </Model>
                </ext:Store>
            </Store>
            <ColumnModel runat="server">
                <Columns>
                    <ext:Column Text="ID" DataIndex="ID" runat="server" />
                    <ext:Column Text="Name" DataIndex="Name" runat="server" />
                </Columns>
            </ColumnModel>
        </ext:GridPanel>
    </body>
    </html>
    namespace SandBox.Controllers
    {
        public class ExampleController : System.Web.Mvc.Controller
        {
            public ActionResult Index()
            {
                return View();
            }
    
            public StoreResult LoadFakeRecords()
            {
                List<Person> lst = new List<Person>();
    
                for (int index = 0; index < 15; index++)
                {
                    lst.Add(new Person
                    {
                        ID = index,
                        Name = "Name" + index
                    });
                }
    
                return new StoreResult(lst, lst.Count());
            }
    
            [Serializable]
            public class Person
            {
                public int ID { get; set; }
    
                public string Name { get; set; }
            }
        }
    }
  5. #5
    Venuc, can this thread be marked as closed?

Similar Threads

  1. [CLOSED] Drag Cell from Grid 1 and Drop to Grid 2 Cell
    By redi in forum 2.x Legacy Premium Help
    Replies: 9
    Last Post: Nov 18, 2013, 7:20 AM
  2. Drag Cell from Grid 1 and Drop to Grid 2 Cell
    By darkwalker in forum 2.x Help
    Replies: 0
    Last Post: Sep 24, 2013, 4:53 AM
  3. Replies: 0
    Last Post: Jun 28, 2013, 5:53 AM
  4. MVC Grid Panel pass selected row cell value
    By OriCoder in forum 2.x Help
    Replies: 2
    Last Post: Jun 03, 2013, 3:09 AM
  5. Selected Cell in GridPanel
    By wdk in forum 1.x Help
    Replies: 2
    Last Post: Nov 21, 2011, 2:08 AM

Posting Permissions