##<iron-form>
<iron-form> is an HTML <form> element that can validate and submit any custom
elements that implement Polymer.IronFormElementBehavior, as well as any
native HTML elements. For more information on which attributes are
available on the native form element, see https://developer.mozilla.org/en-US/docs/Web/HTML/Element/form
It supports both get and post methods, and uses an iron-ajax element to
submit the form data to the action URL.
Example:
<form is="iron-form" id="form" method="post" action="/form/handler">
<paper-input name="name" label="name"></paper-input>
<input name="address">
...
</form>By default, a native <button> element will submit this form. However, if you
want to submit it from a custom element's click handler, you need to explicitly
call the form's submit method.
Example:
<paper-button raised onclick="submitForm()">Submit</paper-button>
function submitForm() {
document.getElementById('form').submit();
}To customize the request sent to the server, you can listen to the iron-form-presubmit
event, and modify the form'siron-ajax
object. However, If you want to not use iron-ajax at all, you can cancel the
event and do your own custom submission:
Example of modifying the request, but still using the build-in form submission:
form.addEventListener('iron-form-presubmit', function() {
this.request.method = 'put';
this.request.params = someCustomParams;
});Example of bypassing the build-in form submission:
form.addEventListener('iron-form-presubmit', function(event) {
event.preventDefault();
var firebase = new Firebase(form.getAttribute('action'));
firebase.set(form.serialize());
});