autocomplete injects hidden fields (implemented in JasRemoteRequest.toGetStyleString); this shud be more verbose wherein user shud know that fields are being injected with specific names.
There can be a separate utility method something like serializeFieldsFromProperties( formId ) which populates all form elements with properties. This method can inject hidden field if needed.