Bonjour à tous,
Dans le cadre d'un projet, j'utilise le framework Struts 2, couplé à Dojo 1.6.
J'aimerais tout simplement effectuer une validation d'un formulaire à l'aide de Dojo, tout comme le tout dernier exemple de cette page.
J'y arrive sans problème en utilisant un formulaire HTML "classique", mais les choses se corsent dès que je veux utiliser les balises struts 2.
En effet, j'arrive bien à effectuer les validations du type "vérifier que ce champ est bien un email valide" etc... Mais en ce qui concerne la validation de type "required", elle ne marche très bien en mettant un <input type="text"> mais ne marche plus aussitôt que je passe en <s:textfield/>...
Me voilà donc bien embêté, et je ne trouve pas ma solution :/

Ma JSP :
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
<script src="http://ajax.googleapis.com/ajax/libs/dojo/1.6/dojo/dojo.xd.js"
        data-dojo-config="parseOnLoad:true"></script>
 
        <script>
            dojo.require('dojox.validate');
            dojo.require('dojox.validate.web');
 
            /* basic dijit classes */
            dojo.require('dijit.form.CheckBox');
            dojo.require('dijit.form.Textarea');
            dojo.require('dijit.form.FilteringSelect');
            dojo.require('dijit.form.TextBox');
            dojo.require('dijit.form.ValidationTextBox');
            dojo.require('dijit.form.DateTextBox');
            dojo.require('dijit.form.TimeTextBox');
            dojo.require('dijit.form.Button');
            dojo.require('dijit.form.RadioButton');
            dojo.require('dijit.form.Form');
            dojo.require('dijit.form.DateTextBox');
 
            /* basic dojox classes */
            dojo.require('dojox.form.BusyButton');
            dojo.require('dojox.form.CheckedMultiSelect');
</script>
 
<s:form dojoType="dijit.form.Form" method="post" theme="simple">
                <script type="dojo/method" event="onSubmit">
                    if(this.validate()) {
                        return confirm('Form OK');
                    } else {
                        alert('Formulaire invalide');
                        return false;
                    }
                    return true;
                </script>
                <table cellpadding="0" cellspacing="2">
                    <tr>
                        <td valign="top"><strong>First Name*: </strong></td>
                        <td>
                            <s:textfield
                                name="email"
                                id="email"
                                placeholder="Your email" 
                                dojoType="dijit.form.ValidationTextBox" 
                                required="true"
                                missingMessage="Obligatoire !"
                                />
                        </td>
                    </tr>
 
                </table>
 
                <!-- submit buttons -->
                <s:submit
                    value="Valider" 
                    label="Valider"
                    id="submitButton" 
                    dojoType="dojox.form.Button" />
 
            </s:form>
Tout aide sera la bienvenue
Merci d'avance