Pro Tip: Always Create SharePoint Columns from the List Settings Page

Traditionally when creating SharePoint (or SharePoint Online) list columns, you would first navigate to the Settings page for the List you wanted to add a column. Then you would click “Create column” under the list of existing Columns. This will create the column and the internal name will be a double encoded (click link, scroll down) version of what you typed. You can check this by clicking on the column name after creation and viewing the URL. (See Image Below)

Checking Column Internal Name (Double Encoded)

In SharePoint Online and SharePoint 2013 on-prem, there is another option for adding columns to a list: Quick Edit. (See Image Below)

SharePoint Online Quick Edit

When you click the Edit link (Above), you can add columns directly from the List page. (See Image Below)

Quick Edit Adding Column

However, when you create columns this way, the column name is NOT the double encoded version of the text you entered. It is a random string of numbers, letters, and sometime non-alphanumeric characters! (See Image Below)

Random Character Column Name

This can not only cause issues when this behavior is not known, but it can wreak havoc with custom code like JavaScript.

There is currently no fix for this so please vote on this issue at User Voice for Office 365 here: https://office365.uservoice.com/forums/273492-sites-and-collaboration/suggestions/9756108-update-the-sharepoint-online-list-quick-edit-colum.

If you are writing JavaScript code that references column names, check out this post from the amazing Marc Anderson on how to get the InternalName of a SharePoint list column with SPServices. This should look familiar as it is the Double Encoding example I mentioned earlier.

This is a pretty big issue so please vote for this and share to get visibility with the product team. Also if there are other scenarios where this happens please leave a comment.

Tim Ferro

Comments
Leave a Comment