Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

Show custom field if checkbox is selected on transition screen using Behaviors

Peter Garncarek March 6, 2020

When transitioning an issue to "On Hold" status I have a custom screen with the following fields:

Was there a delay - this is a checkbox with option "Yes"

Length of delay - this is a number field

Cause of delay - free text field

What I want to do with Behaviors is:

When the screen is displayed on transition:

I want to only show field "Was there a delay"

if the box is then checked (Yes is selected) I want to show the other two fields (Length of delay and Cause of delay)

I tried this in Behaviors but it does not work.

def cfDelayDays = getFieldById("customfield_14611")
def cfWasDelayed = getFieldById(getFieldChanged())

def selectedOption = cfWasDelayed.getValue() as String
def isYesSelected = selectedOption == "Yes"

cfDelayDays.setHidden(! isYesSelected)
cfDelayDays.setRequired(isYesSelected)

 

For Behavior setup I have the project selected

Condition is for Workflow step On Hold

And then the server side script

So either my script is wrong or this cannot be done on a transition screen.  Can anyone help?

1 answer

Suggest an answer

Log in or Sign up to answer
0 votes
Leo
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
March 6, 2020

Hi @Peter Garncarek,

The script looks good, but it's also worth to give a try like below

Remove the condition from configuration and add the same in script instead

so the code would be 

 

if (getFieldScreen().name == "On Hold transition Screen Name") {

// your actual code

}

 BR,

Leo

TAGS
AUG Leaders

Atlassian Community Events