Comments (7)
Hey,
If I understood corretly, you should use the onSubmit attribute in the Html.Events package, like:
view : ViewModel -> Html Msg
view model =
Html.form
[ Html.Events.onSubmit (onSubmitMsg model.form) ]
[ ... -- Your form view
, Html.button [ type' "submit" ] [ text "Send" ]
]
onSubmitMsg form =
case Form.getOutput form of
Nothing -> FormMsg Form.Submit
Just validForm -> Submit validForm
This works because the onSubmit event already comes with preventDefault = True
. If you need different behavior, use onWithOptions to create a customized version of onSubmit.
from elm-form.
Hello,
Do you want to prevent the browser submit event or something else?
Could you provide some code to show what you're trying to do?
from elm-form.
I haven't got chance to try what @pablohirafuji said but yes, what I want is to prevent the browser submitting the form if validations are not passing.
from elm-form.
Okey, so alternatively you can also use a basic button
for submit, or avoid using the form
tag.
from elm-form.
Not using the form
tag means I loose a few things like auto submit on enter (and not sure if it's valid HTML).
Here's the code: https://gist.github.com/chalmagean/f06eea7cf00c156456f463621958d848
The problems is that Html.form
expects List (Html Msg)
and I'm giving it List (Html Form.Msg)
. So I'm still not sure how to fix this.
from elm-form.
Hey,
On submit you are double mapping to FormMsg (in line 70 as Html.map FormMsg
and line 113 FormMsg Form.Submit
). Don't map the attributes, just the formView, and you will have to handle the Submit case. Here's an example: https://gist.github.com/pablohirafuji/46c452341853f8693dee5fa90c877731.
from elm-form.
@pablohirafuji sweet! That seems to work. Thank you.
from elm-form.
Related Issues (20)
- Nesting a multiple field validation loses the error HOT 2
- Initial textarea value on IE does not work HOT 3
- Example code typo in README
- Support for Ints? HOT 2
- validation it kick off onBlur for initially empty values HOT 1
- Providing default values to nested records?
- How to validate input1 value is the same as input2 value HOT 1
- Email validator too permissive? HOT 2
- Custom Error after validating through an API
- Why is "elm-test" a dependency? HOT 2
- Why no Form.Cancel message?
- Validation error doesn't appear under `liveError`
- Ability to persist form state as JSON ?
- Dependency on elm-test causes compatibility error HOT 1
- Exception Thrown in Output. ReferenceError: Elm is not defined
- Extend Form.Input to support date input
- Example does not compile (Elm 0.19.1)
- Update to `elm-explorations/[email protected]`
- Form Input maintained on Reset HOT 2
- Form validation for more than 8 fields? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from elm-form.