Apr 24, 2022, 4:32 AM
[CLOSED] segmented buttons dont properly pass values with Form.getFieldValues
Hi
I am submitting a form with a segmented button. All my other form elements come through successfully. However,
my segmented button is null.
My XXXForm properties match to my ext form ids (including segmented button) but it always comes as null.
pls assist.
thanks
/Z
and my controller that accepts the SaveXXX function
I am submitting a form with a segmented button. All my other form elements come through successfully. However,
my segmented button is null.
My XXXForm properties match to my ext form ids (including segmented button) but it always comes as null.
pls assist.
thanks
/Z
<ext-window
id="createNewXXX"
title="Create XXX"
width="410"
bodyPadding="10"
modal="true">
<items>
<ext-formPanel
id="createNewXXXFormPanel"
width="390"
x-defaultAnchor="100%">
<fieldDefaults>
<ext-add key="labelWidth" value="100" mode="Raw" />
</fieldDefaults>
<defaults>
<ext-add key="margin" value="0 0 10 0" />
</defaults>
<items>
<ext-fieldContainer fieldLabel="<b>XXX Details</b>" labelAlign="Top" >
<items>
<ext-segmentedButton id="segmentedXXXId">
<items>
<ext-button
text="111"
scale="Medium"
variant=Light
width="130"
iconAlign="Top"
/>
<ext-button
text="222"
width="130"
variant=Light
scale="Medium"
iconAlign="Top"
/>
<ext-button
text="333"
width="130"
scale="Medium"
variant=Light
iconAlign="Top"
/>
</items>
</ext-segmentedButton>
</items>
</ext-fieldContainer>
</items>
<buttons>
<ext-button text="Save" iconCls="x-md md-icon-save" variant="Success">
<DirectEvents>
<Click
url="/XXX/SaveXXX"
timeout="60000"
cleanrequest="true"
before="if (!App.createNewXXXFormPanel.getForm().isValid()) {
return false;
}
this.waitWnd = Ext.Msg.wait('Saving your XXX...', 'Saving...');"
success="alert('success')"
method="POST"
failure="
Ext.Msg.show({
title: 'Error',
msg: 'Error during save',
minWidth: 200,
modal: true,
anchor: 'createNewXXXFormPanel',
icon: Ext.Msg.ERROR,
buttons: Ext.Msg.OK
});"
>
<eventmask mindelay="250" />
<extraParams>
<ext-add key="FormValues" value="App.createNewXXXFormPanel.getForm().getFieldValues()" mode="Raw" />
</extraParams>
</Click>
</DirectEvents>
</ext-button>
</buttons>
</ext-formPanel>
</items>
</ext-window>
and my controller that accepts the SaveXXX function
public IActionResult SaveXXX(string FormValues)
{
XXXForm XXXForm = Newtonsoft.Json.JsonConvert.DeserializeObject<XXXForm>(FormValues);
return null;
}