I have a registration form implemented using jquery mobile. The user can choose to complete this form in either German, English or French - there are multiple internal pages used to display the form in each language .. The user selects their preferred language via a menu button.
I'm using the jquery validate plugin to handle client-side form validation. This works fine .. I'm wondering how to enable the right error messages for the form on each language page ? When you download the plugin from github it includes all the localization error code but I'm not sure how to enable it ..
Here's the JavaScript code I'm using to handle implementing the form validation for each language page ..
Thanks if you can help me to enable the right error messages for the German & French pages ..
$(document).on("pageshow", "#page_deutsch", function() {
$("#register_deutsch").validate();
});
$(document).on("pageshow", "#page_english", function() {
$("#register_english").validate();
});
$(document).on("pageshow", "#page_francais", function() {
$("#register_francais").validate();
});
The plugin adds a validationPlugin function to jQuery. fn , so simply check whether it exists or not; if (typeof jQuery. fn.
Validation in JQuery: Using JQuery, a form is validated on the client-side before it is submitted to the server, hence saves the time and reduce the load on the server. Form Validation means to validate or check whether all the values are filled correctly or not.
The jQuery validation plugin leverages a CSS selector like syntax to apply a set of validation rules. You can download the plugin (js) file from jQuery website. The password and confirm password objects are matched by the validation plugin for you and shows the message on the equalTo attribute if they don't match.
jQuery validation plugin localization The default language for jQuery validation plugin is English. It could be overridden with the localization js file, eg. es, zh, fr, etc. Please refer here for the list of supported languages.
To enable languages support, we just need to add other language message js into our webpage (html/jsp/xhtml). for french
<script type="text/javascript" src="http://jzaefferer.github.io/jquery-validation/localization/messages_fr.js" />
for chinese
<script type="text/javascript" src="http://jzaefferer.github.io/jquery-validation/localization/messages_zh.js" />
Same for other languages, just find the appropriate language js and add the js into the webpage.
if the required language is not in the list, an workable alternative is to download a copy of the messages_xx.js into project workspace, then modify it to your required language.
Although the language js is provided, but the problem is in 1 webpage we can only use 1 type of language message. If multiple language message js in the webpage, the last will be used.
To resolve this problem, we can dynamically load the messages js by system locale.
<script type="text/javascript" src="http://jzaefferer.github.io/jquery-validation/localization/messages_<%= Locale.getDefault().getLanguage() %>.js" />
with the above solution, finally we can dynamically handle different language message by different system locale.
There is another way to handle multiple languages with resource bundle here.
related jQuery validation articles:
Done!!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With