Indeed $ is jQuery, the extra library you need to load But..[drumroll] [Microsoft has mQuery](https://www.spcaf.com/blog/sp-context-dev-part-6-jquery-vs-sharepoint/)... so you do not need jQuery var headline = m$(ctx.CurrentItem.Body)[0].textContent; Or in native (modern browser) JavaScript: var headline = document.querySelector(ctx.CurrentItem.Body).textContent; But... chicken/egg It won't work because the DOM element you want to get the text from does not exist (because this CSR code creates it) The text you want is in the items ctx object: If you call it for the whole Item: var headline = ctx.CurrentItem.Body; The above is tied to the Internal name; If you call it for (any) one Description Column [as shown in the MSDN example](https://code.msdn.microsoft.com/office/Client-side-rendering-code-93e7077d) that internal name is declared in the ctx object: *and creates more generic/reusable code* var headline = ctx.CurrentItem[ctx.CurrentFieldSchema.Name]; FYI: This type of CSR development is a breeze with the free [Chrome Browser Cisar Plugin](https://chrome.google.com/webstore/detail/cisar/nifbdojdggkboiifaklkamfpjcmgafpo?hl=en)