source: Dev/trunk/src/client/dojox/mvc/tests/test_mvc_shipto-billto-hierarchical.html

Last change on this file was 483, checked in by hendrikvanantwerpen, 11 years ago

Added Dojo 1.9.3 release.

File size: 6.4 KB
Line 
1<!DOCTYPE html>
2<html>
3        <head>
4                <meta http-equiv="Content-type" content="text/html; charset=utf-8">
5                <title>Static Master/Detail Pattern -- Multiple Address Detail example</title>
6                <script>
7                        require = {
8                                parseOnLoad: 0,
9                                isDebug: 1,
10                                async: 1,
11                                mvc: {debugBindings: 1}
12                        };
13                </script>
14                <script src="../../../dojo/dojo.js" type="text/javascript"></script>
15                <style type="text/css">
16                        @import "css/app-format.css";
17                        @import "../../../dijit/themes/claro/claro.css";
18                </style>
19                <script type="text/javascript">
20                        require([
21                                "dojo/_base/declare",
22                                "dojo/parser",
23                                "dojox/mvc/getStateful",
24                                "dojox/mvc/EditModelRefController",
25                                "dojox/mvc/ListController",
26                                "dijit/form/Button",
27                                "dijit/form/TextBox",
28                                "dojox/mvc/Output",
29                                "dojox/mvc/Group"
30                        ], function(declare, parser, getStateful, EditModelRefController, ListController){
31                                var clz = declare([EditModelRefController, ListController], {});
32                                ctrl = new clz({
33                                        sourceModel: getStateful({
34                                                Serial: "360324",
35                                                First: "John",
36                                                Last: "Doe",
37                                                Email: "jdoe@example.com",
38                                                ShipTo: {
39                                                        Type: "Home",
40                                                        Address: {
41                                                                Street: "123 Valley Rd",
42                                                                City: "Katonah",
43                                                                State: "NY",
44                                                                Zip: "10536"
45                                                        },
46                                                        Telephone: {
47                                                                AreaCode: "123",
48                                                                Landline: {
49                                                                        Number: "456-7890",
50                                                                        Extension: "42"
51                                                                },
52                                                                Cell: {
53                                                                        Number: "765-4321"
54                                                                }
55                                                        }
56                                                },
57                                                BillTo: {
58                                                        Type: "Office",
59                                                        Address: {
60                                                                Street: "17 Skyline Dr",
61                                                                City: "Hawthorne",
62                                                                State: "NY",
63                                                                Zip: "10532"
64                                                        },
65                                                        Telephone: {
66                                                                AreaCode: "098",
67                                                                Landline: {
68                                                                        Number: "765-4321",
69                                                                        Extension: "24"
70                                                                },
71                                                                Cell: {
72                                                                        Number: "123-4567"
73                                                                }
74                                                        }
75                                                }
76                                        }),
77                                        cursorIndex: 'ShipTo'
78                                });
79                                parser.parse();
80                        });
81                </script>
82        </head>
83        <body class="claro">
84                <script type="dojo/require">at: "dojox/mvc/at"</script>
85                <div id="wrapper">
86                        <div id="header">
87                                <div id="navigation"></div>
88                                <div id="headerInsert">
89                                        <h1>Order Shipping Details</h1>
90                                        <h2>Data Binding Example - Hierarchical data.</h2>
91                                </div>
92                        </div>
93                        <div id="main">
94                                <div id="leftNav"></div>
95                                <div id="mainContent">
96                                        <div class="row" data-dojo-type="dojox.mvc.Group" data-dojo-props="target: at(ctrl, 'model')">
97                                                <div class="row">
98                                                        <label class="cell" for="serialInput">Order #:</label>
99                                                        <input class="cell" id="serialInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Serial')"/>
100                                                </div>
101                                                <div class="row">
102                                                        <label class="cell" for="lastnameInput">Last name:</label>
103                                                        <input class="cell" id="lastnameInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Last')"/>
104                                                </div>
105                                                <div class="row">
106                                                        <label class="cell" for="emailInput">Email:</label>
107                                                        <input class="cell" id="emailInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Email')"/>
108                                                </div>
109                                        </div>
110                                        <br/>
111                                        Choose:
112                                        <button type="button" data-dojo-type="dijit.form.Button" data-dojo-props="onClick: function(){ ctrl.set('cursorIndex', 'ShipTo'); }">Ship To</button>
113                                        <button type="button" data-dojo-type="dijit.form.Button" data-dojo-props="onClick: function(){ ctrl.set('cursorIndex', 'BillTo'); }">Bill To</button>
114                                        <br/>
115                                        <div class="row">
116                                                <label class="cell" for="addrLabel">Selected Address:</label>
117                                                <div class="cell" data-dojo-type="dojox.mvc.Output" id="addrLabel" data-dojo-props="value: at(ctrl, 'cursorIndex')"/></div>
118                                        </div>
119                                        <br/>
120                                        <div id="addrGroup" data-dojo-type="dojox.mvc.Group" data-dojo-props="target: at(ctrl, 'cursor')">
121                                                <div class="row">
122                                                        <label class="cell" for="typeInput">Type:</label>
123                                                        <input class="cell" id="typeInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Type')"/>
124                                                </div>
125                                                <div id="postalGroup" data-dojo-type="dojox.mvc.Group" data-dojo-props="target: at('rel:', 'Address')">
126                                                        <div class="row">
127                                                                <label class="cell" for="streetInput">Street:</label>
128                                                                <input class="cell" id="streetInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Street')"/>
129                                                        </div>
130                                                        <div class="row">
131                                                                <label class="cell" for="cityInput">City:</label>
132                                                                <input class="cell" id="cityInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'City')"/>
133                                                        </div>
134                                                        <div class="row">
135                                                                <label class="cell" for="stateInput">State:</label>
136                                                                <input class="cell" id="stateInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'State')"/>
137                                                        </div>
138                                                        <div class="row">
139                                                                <label class="cell" for="zipInput">Zipcode:</label>
140                                                                <input class="cell" id="zipInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Zip')"/>
141                                                        </div>
142                                                </div>
143                                                <div id="telGroup" data-dojo-type="dojox.mvc.Group" data-dojo-props="target: at('rel:', 'Telephone')">
144                                                        <div class="row">
145                                                                <label class="cell" for="areacodeInput">Area code:</label>
146                                                                <input class="cell" id="areacodeInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'AreaCode')"/>
147                                                        </div>
148                                                        <div id="llGroup" data-dojo-type="dojox.mvc.Group" data-dojo-props="target: at('rel:', 'Landline')">
149                                                                <div class="row">
150                                                                        <label class="cell" for="numberInput">Landline Number:</label>
151                                                                        <input class="cell" id="numberInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Number')"/>
152                                                                </div>
153                                                                <div class="row">
154                                                                        <label class="cell" for="extInput">Extension:</label>
155                                                                        <input class="cell" id="extInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Extension')"/>
156                                                                </div>
157                                                        </div>
158                                                        <div class="row" id="cellGroup" data-dojo-type="dojox.mvc.Group" data-dojo-props="target: at('rel:', 'Cell')">
159                                                                <label class="cell" for="cellInput">Cell Number:</label>
160                                                                <input class="cell" id="cellInput" data-dojo-type="dijit.form.TextBox" data-dojo-props="value: at('rel:', 'Number')"/>
161                                                        </div>
162                                                </div>
163                                                <br/>
164                                                Model:
165                                                <button id="reset" type="button" data-dojo-type="dijit.form.Button" data-dojo-props="onClick: function(){ ctrl.reset(); }">Reset</button>
166                                        </div>
167                                </div>
168                        </div>
169                </div>
170        </body>
171</html>
Note: See TracBrowser for help on using the repository browser.