Bonsoir, je cherche à charger dynamiquement ou du moins à imposer une configuration dynamique suivant la langue à notre cher plugin validate.
J'ai essayer divers méthode mais aucune ne semble fonctionner:
Methode 1:
Dans mon fichier de base monscript1.js:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
var registration = $("#dc-registration").validate({
		onsubmit: true,
		event: 'submit',
		onkeyup: false,
		rules: {
	    	pr_lastname: {
				required: true,
				minlength: 2
			},
			pr_firstname: {
				required: true,
				minlength: 2
			},
			pr_pseudo: {
				required: true,
				minlength: 2,
			},
			pr_email: {
				required: true,
				email: true,
			},
			conf_email: {
				required: true,
				email: true,
				equalTo: "#pr_email"
			},
			pr_cryptkeypass: {
				required: true,
				minlength: 8,
				password: "#pr_pseudo"
			},
			conf_cryptkeypass: {
				required: true,
				equalTo: "#pr_cryptkeypass"
			},
			idcountry:{required: true},
			agree:{required:true}
		}
	});
	$("#dc-registration").registration;
J'appel ceci via un autre script fr_signup.js:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
(function($) { 
	$.validator.setDefaults({ 
		messages: {
			pr_lastname: {
				required: "Enter a lastname"
			},
			pr_firstname: {
				required: "Enter a firstname"
			},
			pr_pseudo: {
				required: "Enter a username",
				remote: jQuery.format("{0} is already in use")
			},
			pr_email: {
				required: "Enter a email",
				email: "Enter a valid mail",
				remote: jQuery.format("{0} is already in use")
			},
			conf_email: {
				required: "Enter a email",
				email: "Enter a valid mail",
				equalTo: "Enter the same email"
			},
			pr_cryptkeypass: {
				password: "the password is weak",
				required: "Enter a password",
				minlength: "Enter a min length(8)"
			},
			conf_cryptkeypass: {
				required: "Repeat your password",
				minlength: jQuery.format("Enter at least {0} characters"),
				equalTo: "Enter the same password as above"
			},
			idcountry:{required: "Choice country"},
			agree: "Please agree to our policy"
		}
	});
});
Cette méthode ne fonctionne pas j'ai alors entrepris :

ficher de configuration de base idem que précédent

Création d'un fichier json fr_signup.json:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
{lastname:"Enter a lastname"}
Que j'appel dans mon script sur la page courante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
 
$.getJSON("fr_signup.json", function(data) {
   $.validator.setDefaults({ 
		messages: {
			pr_lastname: {
				required: data.lastname
			},
			pr_firstname: {
				required: "Enter a firstname"
			},
			pr_pseudo: {
				required: "Enter a username",
				remote: jQuery.format("{0} is already in use")
			},
			pr_email: {
				required: "Enter a email",
				email: "Enter a valid mail",
				remote: jQuery.format("{0} is already in use")
			},
			conf_email: {
				required: "Enter a email",
				email: "Enter a valid mail",
				equalTo: "Enter the same email"
			},
			pr_cryptkeypass: {
				password: "the password is weak",
				required: "Enter a password",
				minlength: "Enter a min length(8)"
			},
			conf_cryptkeypass: {
				required: "Repeat your password",
				minlength: jQuery.format("Enter at least {0} characters"),
				equalTo: "Enter the same password as above"
			},
			idcountry:{required: "Choice country"},
			agree: "Please agree to our policy"
		}
	});
 });
Que puis-je faire pour avoir une méthode qui fonctionne