Show Custom Field if value from another Field is selected

Hi,

On Issue creation, I have a Cascading Select custom field that has a set of Values.

I am trying to run a script where if the 1st drop down has "Paypal" selected, another customfield called "PayPal Payee" should be shown.

If "Paypal" is not selected, the field should remain hiddem

After I created the script below, when selecting "Paypal", the fields still remains hidden

I cannot understand what I am doing wrong. 

Can someone please help me solve this issue?

script.PNG

1 answer

1 accepted

This widget could not be displayed.

Hi Jason,

When creating a behaviour, the behaviour should be attached to the field that you want to track or check values from. In your case, you should put this behaviour on the Cascading Select custom field.

Your script isn't far off, but there's some things you need to change. First, Cascading Select Lists return a list of values whenever you call getValue() on the field. Example: ['Parent Option', 'Child Option']

So if you want to check the first dropdown, you'll need to access the first value of the list.

def cascadingField = getFieldById(getFieldChanged())
def cascadingValues = cascadingField.getValue()

def PaypalPayee = getFieldById("customfield_11906")
PaypalPayee.setHidden(true)

if (cascadingValues[0] == "Paypal") {
PaypalPayee.setHidden(false)
}

HI Joshua,

I did use the explenation above but now i have this error

code.PNGerror.PNG

Jason,

The static type checker is not always accurate. The behaviour should work regardless of the error. Try to use it. It worked for me.

Hi Joshua,

Unfortunately, it's not working.

When I open the create issue screen, "Paypal Payee Name" is still shown even if payment type has "None" selected.

create screen.PNG

I would like this to show only if "Paypal" is selected.

Any other ways I could achieve this? 

Thanks,
Jason

Jason,

It looks like you changed the script that I gave you? You have this in your screenshot:

if (PaymentType[0] == "Paypal")

when it should be this

if (cascadingValues[0] == "Paypal")

That's probably why you're getting that static type checking error, because you're trying to access an index of the object instead of the object's values.

I did exactly the above and works like a charm!

Thank you!

-Jason

Glad to hear Jason! :)

If you wouldn't mind, please accept my answer as the accepted answer so that others in the community can see the answer more easily.

Suggest an answer

Log in or Sign up to answer
Atlassian Summit 2018

Meet the community IRL

Atlassian Summit is an excellent opportunity for in-person support, training, and networking.

Learn more
Community showcase
Posted Wednesday in New to Jira

Are you planning to trial, or are currently trialling Jira Software? - We want to talk to you!

Hello! I'm Rayen, a product manager at Atlassian. My team and I are working hard to improve the trial experience for Jira Software Cloud. We are interested in   talking to 20 people planning t...

139 views 2 0
Join discussion

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you