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

Script not working on Multiselect field

Priyanka Nimbalkar August 15, 2022

Hi Team,

I am trying to create a behaviour based on value from multi select field -basically to hide two field but it's not working somehow:

def dropDown =getFieldByName("Environment")
def dropDown2=getFieldByName("Application")

def MultiselectList = getFieldById(getFieldChanged()) // I tried this alternate statement as well -getFieldByName("Name")


def MultiselectListValue =MultiselectList.value as List

if(MultiselectListValue == ["ABC"]) {
dropDown.setHidden(false)
dropDown2.setHidden(false)

}

 

1 answer

Suggest an answer

Log in or Sign up to answer
1 vote
Peter-Dave Sheehan
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
August 15, 2022

Try it like this:

def MultiselectList = getFieldById(getFieldChanged()) // I tried this alternate statement as well -getFieldByName("Name")
def MultiselectListValue =MultiselectList.value as List
def hide = MultiselectListValue.contains("ABC")
def fieldsToHide = ['Environment', 'Application']
fieldsToHide.each{fieldName->
getFieldByName(fieldName).setHidden(hide)
}
Priyanka Nimbalkar August 17, 2022

It's not working somehow , i want these two drop to be hidden when value is selected as "ABC" in multi select field other wise it should be visible as usual.

Does it matter if the multi select field is project specific ?

Peter-Dave Sheehan
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
August 17, 2022

You can try to output some information on your screen for debugging purposes:

def MultiselectList = getFieldById(getFieldChanged()) // I tried this alternate statement as well -getFieldByName("Name")
def MultiselectListValue =MultiselectList.value as List
def hide = MultiselectListValue.contains("ABC")
MultiselectList.setHelpText("Value detected: $MultiselectListValue (${MultiselectListValue.getClass()}) hide=$hide")
def fieldsToHide = ['Environment', 'Application']
fieldsToHide.each{fieldName->
getFieldByName(fieldName).setHidden(hide).setHelpText("Field $fieldName identified. Attempting to set hidden=$hide")
}

What happens when you set that as your server-side script for the Multi Select field?

TAGS
AUG Leaders

Atlassian Community Events