icon Single Choice

The Single Choice field allows a user to select only one option from a predefined list of options.

This page contains a detailed description of the field properties and JavaScript samples which you can use with this field.

Single Choice field

Common Properties

Single Choice Properties

Here you can find properties specifically related to the Single Choice field.

Options

Stores a list of options:

Static list options

Allows to customize each option’s color and specify the default option:

Customize options

Columns

Specify the layout of the options. By default, the options are grouped into three columns.

Columns property

JavaScript framework

In this section, you can find basic examples of how to work with the field using JavaScript.

For more examples, check out Working with form fields in JavaScript article. If you are not familiar with the JavaScript framework, get started with the JavaScript basics.

Note

The field is only accessible once the form is rendered, so all calls to the field must be inside fd.spRendered event:

fd.spRendered(function(){
    //make field required
    fd.field('Field1').required = true;
});

Get or set field value

Get or set the Single Choice field value:

//return field value as a string
fd.field('Field1').value;

//set field value
fd.field('Field1').value = 'Item 2';

Handle change event

Execute a function when a field value has been changed:

fd.field('Field1').$on('change', function(value) {
    //log changes to browser's console
    console.log('New value: ' + value);
});

Make field required

Make a field required or optional:

//make field required
fd.field('Field1').required = true;

//make field not required
fd.field('Field1').required = false;

Disable field

Make a field non-editable. The field value can still be changed with JavaScript and saved:

//disabled field
fd.field('Field1').disabled = true;

//enable field
fd.field('Field1').disabled = false;

Get HTML element

Access HTML element inside the field in order to modify it, hide it, or do something else.

//access field's control
var htmlField = fd.field('Field1').$el;

//access field's block, which includes title and control
var htmlFullField = fd.field('Field1').$parent.$el;

Hide field

Hide a field from a user. The field value can still be accessed and changed with JavaScript:

//hide field
fd.field('Field1').hidden = true;

//show field
fd.field('Field1').hidden = false;

Allow custom values

Define whether a user is allowed to enter a custom value that is not included in the list of options.

//turn on custom values
fd.field('Field1').allowUserValue = true;

//turn off custom values
fd.field('Field1').allowUserValue = false;

Change the text of the custom value option

Customize the text of the extra option that allows the user to enter a value that is not on the list of options. The default text is “Other”.

fd.field('Field1').customValueTitle = 'Enter your value';

Change field options

Change the Single Choice field options:

fd.field('Field1').options = ['New option 1', 'New option 2', 'New option 3'];

Get or set option colors

If you want to change option colors without changing the options, use the following, just replace Your option with actual value:

//get option colors
fd.field('Field1').optionsColors['Your option'].backgroundColor
fd.field('Field1').optionsColors['Your option'].textColor

//set option colors:
fd.field('Field1').setOptionColors('Your option', {textColor: '#ffffff', backgroundColor: '#ebb65e'})

Columns

Specify the number of columns by which the options will be grouped:

//group by 2 columns
fd.field('Field1').columnsNumber = 2;