Getting Started | API | Elements | Actions | Validators | Handlers | Configuration Options | Advanced Guides | Troubleshooting | About
Restful elements introduce the possibility to create forms that don't depend on AJAX/Javascript. This is sometimes useful, for example if you want to provide a fallback option when a client does not support javascript or sits behind a firewall that filters active content.
Check out the RESTful Forms Demo
Restful requests work a little different compared to the rest of Nitrogen. They don't use the event mechanism. Instead you have to render the reply either on a different page or check if wf:q(restful_method) is set to "post" or "get" depending on the method of the form. Form elements that don't rely on javascript are useable in restful_form elements. The elements that are supported are described below.
Each control within a #restful_form{} element will submit its Nitrogen id as the name of the field, unless overridden by specifying an html_name on the restful elements.
Some elements are replaced with restful_ counterparts:
Validators are not currently supported for restful_submit actions, so be sure extra sure to check your inputs.
case wf:q(restful_method) of
"post" -> [
% this is code is executed after the submit button was pressed
#table{rows=[
#tablerow{cells=[
#tablecell{text="text_input"},
#tablecell{text=wf:q(text_input)}
]}
]};
_else -> [
% this code is executed when restful_method is "get"
% or undefined
#restful_form{id=restful_form, method=post, body=[
#table{rows=[
#tablerow{cells=[
#tablecell{text="text_input"},
#tablecell{body=[#textbox{id=text_input}]}
]}
]},
#restful_reset{},
#restful_submit{}
]}
]
end