J'ai un formulaire avec une DateTextBox comme suit :

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
 
    <div dojoType="dijit.form.Button"
         onclick="dijit.byId('dlg_jour').show()">Jour</div>
    <div dojoType="dijit.Dialog"
         id="dlg_jour"
         title="Date"
         execute="changeJour();">
      <table>
        <tr>
          <td><label for="dlg_date">Date : </label></td>
          <td><input type="text"
                     name="dlg_date"
                     id="dlg_date"
                     value="2009-07-01"
                     dojoType="dijit.form.DateTextBox"
                     required="true"
              />
          </td>
        </tr>
        <tr>
          <td colspan="2" align="center"><button dojoType=dijit.form.Button type="submit">OK</button></td>
        </tr>
      </table>
    </div>
La fonction changeJour est comme suit :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
    function changeJour()
    {
      var rawdate = dijit.byId("dlg_date").attr("value");
      var date = dojo.date.locale.parse( rawdate, {datePattern: "yyyy-MM-dd", selector: "date"} );
      console.log(date);
    }
J'ai Dojo 1.3.1, et firebug. Dans la console, j'obtiens null. Si j'y affiche rawdate, j'ai la date choisie : ( par ex: Thu Jul 16 2009 00:00:00 GMT+0200 (CEST) )

A mon avis je ne passe pas une valeur acceptable à dojo.date.locale.parse, mais je débutant en dojo et javascript et là je coince.

Une idée ? (pendant que je continue à compulser les tutorials et docs )