4

I am using the apex:inputField to capture the values and and required="true" to set some of the fields mandatory. However, for some buttons like cancel, I don't want it to check the required fields. If I am using apex:commandButton I can use immediate="true" to resolve this. However, since there are many things apex:commandButton can't do I am using standard html and javascript. I find it hard to translate immediate="true" as I saw no difference in the html when debugging. Any suggestions?

3

There's no direct translation for the immediate attribute, because it only affects server-side validation. In essence, this attribute is evaluated early in the Visualforce transaction lifecycle, before any user-defined code can execute.

While there is a concept of client-side validation in html 5, there's no analogous concept in html 5 for server-side validation, because that's outside the scope of the language definition, and left to the developers of server-side execution, such as salesforce, to define those mechanisms.

| improve this answer | |
1

As noted in the comments and @sfdcfox's answer, the "immediate" attribute affects server logic, and has no direct equivalent in HTML.

However, both actionFunction and commandButton support immediate=true. Have you tried calling an actionFunction (rather than just submitting the form) when you want the "immediate=true" support? Alternatively simulating a click event on a hidden commandButton? Either of those should have the effect you are looking for.

| improve this answer | |
  • Thank you for that. I am actually using actionFunction. That will save me some time in implementing this. One thing I am concerned is whether we need to go to server side to verify the mandatory fields though. However, it doesn't seem to be too bad. – Lance Shi Dec 1 '14 at 6:32

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.