2

I know I can use SharePoint Designer to convert a list to a data view web part and then I can do this easily. But I wanted to know if there was a way to do this with a list view web part without the intervention of SharePoint Designer.

I have an order table:

orderid  orderdate
1        1/1/2011
2        2/2/2012
3        3/3/2013

I would like to establish a hyperlink on the orderid values that will go to its correspondence page. For example, if you are on the list view page for http://server/Lists/Orders/Allitems.aspx then I would like to see the orderids are hyperlinked, so when user clicks on order id 2 it will take them to http://server/ordersite/2/order.aspx.

Is this possible?

1
  • Why the aversion to Sharepoint Designer? It's a completely free tool, for both Sharepoint 2007 and Sharepoint 2010.
    – CodeThug
    Oct 20, 2010 at 19:19

3 Answers 3

2

There is no OOTB option for this.

If you want to keep the LVWP, the only way will be to apply some post-formatting on the Web page. You can use my HTML Calculated Column method:

http://blog.pathtosharepoint.com/2008/09/01/how-to-open-hyperlinks-in-a-new-window-or-not/

Notes:

  • the post is two years old, so I recommend that you also take a look at recent updates
  • remember that the method only applies to the Web page, not the list itself
1
  • Christophe, I look at the suggested link but it wont work for since I am using a lookup column.
    – Anonymous
    Oct 21, 2010 at 15:36
1

It'd be quite difficult without SharePoint designer, and here's why.

The DataViewWebPart sections you need to edit to be able to do this are the XSL transformation for the web part. This is stored in the content page on which the DVWP appears.

When you open the page for editing by SharePoint designer it uses web services to retrieve the content page source from the server.

There is no easy way to edit the content page's source without SharePoint Designer, unfortunately.

What you could do - if you already have the DVWP on a page, you may be able to edit the XSLT by going to "Modify Shared Web Part" in the web page itself, and viewing the XSLT, but you would need to a full grasp on waht you were doing, as you'd have no real-time feedback on what you were doing, and if you break it then it's up to you to have made a backup copy of the XSLT first. But this method would be a proper pain in the rear.

4
  • James, thanks for prompt respond. But I am unwilling to change the LVWP to DVWP. I can do it in dataview and I have done with more complex list. However, this is a simple list and I wanted to implement hyperlink in the LVWP.
    – Anonymous
    Oct 20, 2010 at 19:40
  • Could try Exporting the LVWP, which downloads a .webpart file. Problem is, it's XML-encoded the XSLT, so you'd need to put it through a decoder like this: opinionatedgeek.com/dotnet/tools/htmlencode/Decode.aspx Remembering to re-encode before you put back into the .webpart file and re-uploading. A very process, however.
    – James Love
    Oct 20, 2010 at 19:53
  • This looks like a plan but I dont know whether the deployment will do this during production deployment or not.
    – Anonymous
    Oct 21, 2010 at 15:39
  • Create a new web part page and display a LVWP from your list and edit that LVWP, so you're not touching actively-used production web parts.
    – James Love
    Oct 21, 2010 at 16:22
0

The only way you could achieve this other than the above, is to declare a custom field type, derived from Counter, and a new base content type (not 0x!); which you could then use as a base. You could then modify the rendering for this field, such that it always output the correct URL. This way would be much more headache than simply inserting a DVWP!

1
  • Hmm. Good idea but lengthy implementation. I guess, I will have to convert it to DVWP (dataview web part) and I can then hyperlink the column in question. Thanks Tim for you input.
    – Anonymous
    Oct 21, 2010 at 15:38

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.