• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 455
  • Last Modified:

Ext technology + Grid + HyperLink column...

I built an ascx that contains a grid.
I need to add a column that the values inside will be links.
The column is :
 {name: 'Title', type: 'string'}  -----> instead of string, somthing like "URL", or "HyperLink"
This doesn't work, so how can it be done?
(the code is below...)
<script language="javascript">
    var record = Ext.data.Record.create([
        {name: 'RequestId', type: 'float'},
        {name: 'Id', type: 'string'},
        {name: 'Title', type: 'string'}  ***********HERE I NEED TO CHANGE TO HYPERLINK-TEXT/URL
    var xmlStore = new Ext.data.Store({            
        url     : "Services/ExtService.aspx?serviceMethod=GetData",
        reader  : new Ext.data.XmlReader({
            record      : Suppliers, 
            totalRecords: "results"}, record
    var pagingBar = new Ext.PagingToolbar({
        pageSize    : 10,
        displayInfo : true,
        displayMsg  : '',
        store       : xmlStore
    var sm = new Ext.grid.RowSelectionModel({
        singleSelect: true,
        listeners: {
            rowselect: function(sm, row, rec) {
    var reportsGrid = new Ext.grid.GridPanel({
        cm : new Ext.grid.ColumnModel([
            {RequestID: 'RequestId', dataIndex: 'RequestorId', hidden: true},
            {header: 'a',sortable: true, dataIndex: 'Id'},
            {header: 'b',sortable: true, dataIndex: 'Title'}                
        plugins             : expander,
        collapsible         : false,
        animCollapse        : false,
        sm                  : sm,
        enableHdMenu        : false,
        enableColumnResize  : false,
        store               : xmlStore,
        height              : 400,
        width               : 850,
        viewConfig          : {forceFit : true, scrollOffset:2},
        autoExpandColumn    : 'SecondarySubject',
        frame               : true,
        title               :'results',
        bbar                : pagingBar,
        {text:,'show', tooltip:'show', tooltipType: 'title'}, 
        {text:'back', handler: back, tooltip:'new search', tooltipType: 'title'}

Open in new window

  • 2
  • 2
1 Solution
What is the actual content of the Title field in the Ext record?

I use links in Ext grids but usually use a renderer on the fly. Can you try this method?

			var listColumnModel = new Ext.grid.ColumnModel
					{header: "Full Name", width: 90, sortable: true, dataIndex: 'fullName'},
					{header: "Date of Birth", width: 80, sortable: true, dataIndex: 'birthDateString'},
					{header: "Actions", width: 60, sortable: false, fixed: true, dataIndex: '', renderer: renderActions}
			function renderActions(value, meta, record)
				var editUrl = baseUri + 'detail/edit.action?id=' + record.data.id;
				var html = '<a href="' + editUrl + '"><img src="' + baseUri + '/images/icon/edit.png" width="18" height="18" ext:qtip="Edit"/></a>';
				return html;

Open in new window

udirAuthor Commented:
what is your -  baseUri?
i get an error:  is not define
I define it to a struts tag (which is in a sitemesh master page):

       var baseUri = '<s:url value="/"/>';

But that maps to the context root of the application

       var baseUri = '/myapp/';
udirAuthor Commented:
Thanks a lot
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Keep up with what's happening at Experts Exchange!

Sign up to receive Decoded, a new monthly digest with product updates, feature release info, continuing education opportunities, and more.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now