Skip to main content

Customize list forms in SharePoint with JSON formatters

Back in the days of classic SharePoint we had a few options to customize list forms, such as JSLink. Up until recently our options to customize list forms in modern SharePoint were somewhat limited. Sure, we could use JSON to apply custom formatting to views and columns, but unless we leveraged tools, such as PowerApps or SPFx Application Customizers, it was impossible to style list forms.

Microsoft has recently introduced JSON formatters for list forms and I think they are great, especially for requirements where a simple header or footer change may be required.

In this blog we will cover what JSON formatters are, how we can leverage them and some useful examples to support our understanding.

What are JSON formatters?

When Microsoft introduced the modern version of SharePoint, capabilities like JSLink were no longer compatible and became obsolete. JSLink was useful because it allowed us to customize list views, forms and columns, and for some time there was a void until Microsoft released JSON formatters for views and columns.

JSON formatters is much easier to use than its predecessor JSLink. However it’s not been possible to use it to customize SharePoint list forms until now.

How can we leverage them?

In addition to list views and columns, JSON formatting can be applied to the header, body and footer of a SharePoint list form.

To apply the formatting, we first need to create and configure a SharePoint list. I have used the “Travel requests” list template.

Once the list is created, add an item within it.

Click on the newly created item and then select the “Edit form” icon followed by “Configure layout”.

Here we see the three target areas for customization; Header, Body and Footer.


Header examples

The example below simply creates a blank header by rendering an empty div element.

The next example illustrates how we can apply inline styles and Fluent UI CSS classes to customize the aesthetics of the header.


This example shows how we can create parent/child HTML elements and apply conditions based on SharePoint list values.


Body examples

An improvement in structure can be applied to list forms by splitting the fields into a group of sections.

This example shows how we have split the standard “Travel request” list form into four logical sections: “Trip Overview”, “Trip Justification”, “Arrangements and Costs” and “Approval”. 

Note: unlike the Header and Footer, we target the list columns by their display name.

Footer examples

Applying customizations to the footer works in the same way as the header. Here is a simple example.


Conclusion

There will be times when we still need to use SPFx or PowerApps to customize list forms in SharePoint, but with JSON formatters we now have an additional tool in our armour and I hope this post gives you an idea of what is possible.

Useful resources

https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/list-form-configuration

https://docs.microsoft.com/en-us/sharepoint/dev/declarative-customization/column-formatting#creating-custom-json

https://developer.microsoft.com/en-us/fluentui#/styles/web

https://github.com/pnp/sp-dev-list-formatting/tree/master/form-samples

Comments

  1. 1xbet Casino » $1000 welcome bonus + 100 free spins » VIP
    1xbet Casino offers 카지노사이트 the best odds and the best bonuses at the leading online casino. Sign up 샌즈카지노 and start playing 1xbet at 1xbet Casino today! Rating: 4.3 · ‎Review by viecasino.com

    ReplyDelete

Post a Comment

Popular posts from this blog

Replace Power Automate Approval Emails with Adaptive Cards in Microsoft Teams

Microsoft recently released a personal app for Approvals within Teams. Please review this before investing time implementing something customized. If you are still interested in creating a custom adaptive card for an approval process check out the following blog for which this blog is a good precursor. With Microsoft Teams becoming an increasingly dominant force in collaboration, and one objective being the reduction of email, this blog covers how you can simply replace approval email notifications with dynamic adaptive cards in Teams. So, how does it work? I have created a sample SharePoint list using the “ Travel requests ” template and associated it with my Team as shown below. Within Microsoft Power Automate I have created an “ Automated cloud flow ” using the “ When an item is created ” trigger. The next step is to add the “ Create an approval ” action. I have personally configured this action as follows. Notice how I have set the “ Enable notifications ” to “ No ”. This wil

Create Customized Adaptive Cards for Power Automate Approvals in Microsoft Teams

Microsoft recently released a fantastic new feature with which we can action approval requests directly in Teams. This is great news, and no doubt moves us further away from the days of having to trawl through our email to locate an old approval request. But, what customization options are available for approval requests? Can we change the way these look? And can we create our own version of the approval adaptive cards? This blog covers how you can create a customized version of the adaptive card for Power Automate approvals. So, how does it work? Firstly, we need to look at the json payload that generates the out-of-the-box approval adaptive card. This can be extracted by initiating a variable of type string and then adding and configuring a “ Create an approval ” action. We will then set the value of our variable to “ Teams Adaptive Card”. Our flow should look like the following If we now test run the flow and check the value of our variable, we should see the json payload in the &q