-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Can I provide custom order(alphabetical) to the fields? #1557
Comments
Dynamic fields are essentially pre-configured versions of their base type, once they are on the stage they are identical to their base type. They are internally keyed as -dddd where dddd is a 4 digit number. When orderFields(controls) processes the controls, these fields are inserted into the sort place of their base. For example a select field will be select-1234 and it will be sorted to the position one after select. If you are using custom controls which have a fixed name, then these can be sorted. As this is a fairly unique configuration, your best option would be to hook into the resolved formBuilder promise and sort the control li's in the way you want them to be sorted. |
@lucasnetau I request you to please share an example or a demonstration which shows how can I access the promise of the formBuilder if possible. I understood the direction of your thought but I cannot find a way to access the promise you suggested. |
https://formbuilder.online/docs/formBuilder/promise/ $('#selector).formBuilder(config).promise.then(formBuilder => {
//Controls are rendered and you can now sort them
}); |
Thanks for the update! I will get back to you as soon as I implement this. |
Hey @lucasnetau
Now here is the implementation and the logs I kept for debugging. I could not find any method by which I could sort the fields. Also I tried putting fields and options differently using different promises but it did not work as expected. When I put the formData in the promise all the fields renders in the drop-area and I think it's completely normal behaviour and so I understand that formData is not something I need to touch. So I pass the fields as fields parameter only. |
I think you misunderstood me. You cannot control the order of the fields through the fields config option. In the formBuilder promise then() call you need to do custom sorting List Items of the ul.frmb-control element https://stackoverflow.com/questions/304396/what-is-the-easiest-way-to-order-a-ul-ol-in-jquery |
Description:
Environment Details:
Expected Behavior
Actual Behavior
Steps to Reproduce
The text was updated successfully, but these errors were encountered: