Layered Multi Select Checkboxes – Custom Controls in CRM – Part 2

Layered multi level checkboxes challenge can be acheived by using CRM Optionset control and javascripts too. However there is a technique to be used to identify parent and child levels of the multi layered checkboxes. Each picklist item’s value can be used to decide the layer of the checkbox.

Control looks like this in the CRM form after implementing it.

Follow the steps below to work with Layered Multi Select Checkbox control.

[1] Create a OptionSet control and add items to the option set. Items are the checkbox captions in the control.

Add values to the option set items as follows;

Semester 1               101,000,000 Level1 
  Fundamentals           101,002,000 Level2
  Computer Systems       101,002,000 Level2
  Programming Paradigms  101,003,000 Level2
Semester 2               102,000,000 Level1
  DBMS                   102,002,000 Level2
  Systems Design         102,002,000 Level2
  WWW                    102,003,000 Level2
Semester 3               103,000,000 Level1
  Project Management     103,001,000 Level2
  ELearning              103,002,000 Level2
  Final Project          103,003,000 Level2
    Project Report       103,003,001 Level3
    Project Presentation 103,003,002 Level3
Semester 4               104,000,000 Level1
  Internship             104,001,000 Level2

[2] Create a Multi line textbox. This will hold all the selected item values.

[3] Add the LayeredMultiSelectCheckboxesLibrary javascript library to the resources and add it to the form.

Download Layered Multi Select Checkboxes Library Here

[4] Add “LayeredMultiSelectCheckbox.Functions.ToMultiSelectCheckboxWithLayer” with relevant parameters to OnLoad event of the form

Method to be invoked under onload event
ToMultiCheckboxWithLayer: function (var_sc_optionset, var_sc_optionsetvalue, required, hight) 

var_sc_optionset – Name of the option set control
var_sc_optionsetvalue – Name of the multi line textbox
required – Whether the new field (Layered Multi Select Checkboxes control) is required or not
hight – Height of the new control (Layered Multi Select Checkboxes control)

E.g. ToMultiCheckboxWithLayer(“new_subjects”,”new_subjectsvalues”,true,310)

[5] Add “LayeredMultiSelectCheckbox.Functions.CheckAllMultiCheckboxWithLayersRequiredFields” to OnSave event of the form


Author: Indika Abayarathne

MSc in IT [University of Colombo] Solutions Architect | Consultant Technologies: Power Platform | Dynamics CE | Azure

One thought on “Layered Multi Select Checkboxes – Custom Controls in CRM – Part 2”

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: