I have previously posted this solution that lets you add the field description to the list view column header.
By request I have updated the solution to work in a web part page with multiple lists / libraries.
Put this code in a Content Editor Web Part at the bottom of your list view or web part page:
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <script type="text/javascript"> var is2010 = typeof(_fV4UI)!=='undefined'; $("div[id^='WebPartWPQ']").each(function(){ var wpID, tCtxId, tCtx, myTooltipObj, toFind, fieldDisplayName wpID = $(this).attr('WebPartID').toUpperCase(); tCtxId = g_ViewIdToViewCounterMap["{"+wpID+"}"]; if(tCtxId!==undefined){ tCtx = eval("(ctx"+tCtxId+")"); myTooltipObj = customGetList(tCtx.listName); toFind = "table.ms-listviewtable th"; if(is2010){ toFind = "div.ms-vh-div"; } $(this).find(toFind).each(function(){ if(is2010){ fieldDisplayName = $(this).attr('DisplayName'); }else{ fieldDisplayName = $(this).find("table:first").attr('DisplayName'); } if(fieldDisplayName===undefined){ fieldDisplayName = $(this).text(); } if(myTooltipObj[fieldDisplayName]!==undefined){ $(this).attr('title',myTooltipObj[fieldDisplayName]).find('a').attr('title',myTooltipObj[fieldDisplayName]);; } }); } }); function customGetList(listName){ var xmlWrap, result; xmlWrap = []; xmlWrap.push("<?xml version='1.0' encoding='utf-8'?>"); xmlWrap.push("<soap:Envelope xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xmlns:xsd='http://www.w3.org/2001/XMLSchema' xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>"); xmlWrap.push("<soap:Body>"); xmlWrap.push('<GetList xmlns="http://schemas.microsoft.com/sharepoint/soap/">'); xmlWrap.push('<listName>' + listName + '</listName>'); xmlWrap.push('</GetList>'); xmlWrap.push("</soap:Body>"); xmlWrap.push("</soap:Envelope>"); result = {}; $.ajax({ async:false, type:"POST", url:L_Menu_BaseUrl + '/_vti_bin/lists.asmx', contentType:"text/xml; charset=utf-8", processData:false, data:xmlWrap.join(''), dataType:"xml", beforeSend:function(xhr){ xhr.setRequestHeader('SOAPAction','http://schemas.microsoft.com/sharepoint/soap/GetList'); }, success:function(data){ $('Field', data).each(function(i){ if(result[$(this).attr('DisplayName')]===undefined || result[$(this).attr('DisplayName')]===''){ result[$(this).attr('DisplayName')] = ($(this).attr('Description')===undefined)?'':$(this).attr('Description'); } }); } }); return result; } </script>
If you like this solution, buy me a beer!
Alexander
Hello,
Thanks for this amazing solution! This is exactly what I was searching for. Although I found a bug, it doesen’t show the description of an multi line text field column. Can you fix this?
Thanks a lot.
Cheers,
Peter
Hi
When i am trying to use this code in SP 2013 it is not working. Can you help me how to make it work in SP 2013
We are still waiting for the 2013 version.
Cheers