Solved
How do I reset a dropdown value on radio change?
I have the following:
a!localVariables(
local!countries: rule!PT_GetAvailableCountries(),
local!selectedCountry: rule!PT_GetAvailableCountries()[1],
local!states: rule!PT_GetStateByCountry(local!selectedCountry),
a!formLayout(
label: "Create Customer",
contents: {
a!columnsLayout(
columns: {
a!columnLayout(
contents: {
a!textField(
label: "First Name",
labelPosition: "ABOVE",
value: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{421eacda-bfa9-4e18-8a6f-4428e01b5e23}firstName'],
saveInto: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{421eacda-bfa9-4e18-8a6f-4428e01b5e23}firstName'],
characterLimit: 30,
required: false
),
a!textField(
label: "Last Name",
labelPosition: "ABOVE",
value: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{90a4be44-9fc7-4644-abfc-80ebe7628e78}lastName'],
saveInto: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{90a4be44-9fc7-4644-abfc-80ebe7628e78}lastName'],
characterLimit: 30,
required: false
),
a!textField(
label: "Phone",
labelPosition: "ABOVE",
value: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{fbc5f2ed-2d1d-4ccf-b036-9660fa9af1ff}phone'],
saveInto: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{fbc5f2ed-2d1d-4ccf-b036-9660fa9af1ff}phone'],
characterLimit: 20,
required: false
),
a!integerField(
label: "Age",
labelPosition: "ABOVE",
value: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{bd3f98b3-e7fc-44bc-9bfd-88468c8e2ef9}age'],
saveInto: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{bd3f98b3-e7fc-44bc-9bfd-88468c8e2ef9}age'],
required: false
),
a!radioButtonField(
label: "Country",
labelPosition: "ABOVE",
choiceLabels: local!countries,
choiceValues: local!countries,
value: { local!selectedCountry },
saveInto: { local!selectedCountry },
choiceLayout: "COMPACT",
choiceStyle: "STANDARD",
validations: {}
),
a!dropdownField(
label: "State/Province",
labelPosition: "ABOVE",
placeholder: "--- Select a Value ---",
choiceLabels: local!states['recordType!{aff1d458-739c-4f1d-ac99-b00285331451}PT StateOption.fields.{a21553bd-5cea-488d-83bb-1f41f1390eef}combinedState'],
choiceValues: local!states['recordType!{aff1d458-739c-4f1d-ac99-b00285331451}PT StateOption.fields.{6c9cc54a-59ad-4b8b-8bea-1150f50a2b56}stateId'],
value: if(
contains(
local!states['recordType!{aff1d458-739c-4f1d-ac99-b00285331451}PT StateOption.fields.{6c9cc54a-59ad-4b8b-8bea-1150f50a2b56}stateId'],
ri!selectedState
),
ri!selectedState,
null,
),
saveInto: { ri!selectedState, },
searchDisplay: "AUTO",
validations: {}
),
a!paragraphField(
label: "Description",
labelPosition: "ABOVE",
value: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{a0110976-2b24-4156-a7b6-c91f4ecfd8ef}description'],
saveInto: ri!record['recordType!{cf9a6a37-c43d-422f-b4f7-bef6f0e8d9a3}PT Customer.fields.{a0110976-2b24-4156-a7b6-c91f4ecfd8ef}description'],
refreshAfter: "UNFOCUS",
height: "MEDIUM",
validations: {}
)
}
)
}
)
},
buttons: a!buttonLayout(
primaryButtons: {
a!buttonWidget(
label: "Submit",
submit: true,
style: "PRIMARY",
validate: true
)
},
secondaryButtons: {
a!buttonWidget(
label: "Cancel",
value: true,
saveInto: ri!cancel,
submit: true,
style: "NORMAL",
validate: false
)
}
)
)
)
When the country value changes, the display value for State/Province changes, but the ri!selectedSate value does not reset to null.
How can I get ri!selectedState to reset it's value?
