Page Menu
Home
Code
Search
Configure Global Search
Log In
Files
F886049
test_edit_dijit.html
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
5 KB
Subscribers
None
test_edit_dijit.html
View Options
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<
html
xmlns
=
"http://www.w3.org/1999/xhtml"
>
<
head
>
<
meta
http-equiv
=
"Content-Type"
content
=
"text/html; charset=utf-8"
/>
<
title
>
Test dojox.Grid Editing
</
title
>
<
style
type
=
"text/css"
>
@
import
"../_grid/tundraGrid.css"
;
@
import
"../../../dojo/resources/dojo.css"
;
@
import
"../../../dijit/themes/tundra/tundra.css"
;
@
import
"../../../dijit/tests/css/dijitTests.css"
;
#
controls
button
{
margin-left
:
10
px
;
}
#
grid
{
width
:
850
px
;
height
:
350
px
;
border
:
1
px
solid
silver
;
}
</
style
>
<
script
type
=
"text/javascript"
src
=
"../../../dojo/dojo.js"
djConfig
=
"isDebug: true, parseOnLoad: true"
></
script
>
<
script
type
=
"text/javascript"
src
=
"../../../dijit/tests/_testCommon.js"
></
script
>
<
script
type
=
"text/javascript"
>
dojo
.
require
(
"dojox.grid.Grid"
);
dojo
.
require
(
"dojox.grid._data.model"
);
dojo
.
require
(
"dojox.grid._data.dijitEditors"
);
dojo
.
require
(
"dojo.parser"
);
// ==========================================================================
// Create a data model
// ==========================================================================
s
=
(
new
Date
()).
getTime
();
data
=
[
[
"normal"
,
false
,
"new"
,
'But are not followed by two hexadecimal'
,
29.91
,
10
,
false
,
s
],
[
"important"
,
false
,
"new"
,
'Because a % sign always indicates'
,
9.33
,
-
5
,
false
,
s
],
[
"important"
,
false
,
"read"
,
'Signs can be selectively'
,
19.34
,
0
,
true
,
s
],
[
"note"
,
false
,
"read"
,
'However the reserved characters'
,
15.63
,
0
,
true
,
s
],
[
"normal"
,
false
,
"replied"
,
'It is therefore necessary'
,
24.22
,
5.50
,
true
,
s
],
[
"important"
,
false
,
"replied"
,
'To problems of corruption by'
,
9.12
,
-
3
,
true
,
s
],
[
"note"
,
false
,
"replied"
,
'Which would simply be awkward in'
,
12.15
,
-
4
,
false
,
s
]
];
var
rows
=
100
;
for
(
var
i
=
0
,
l
=
data
.
length
;
i
<
rows
;
i
++
){
data
.
push
(
data
[
i
%
l
].
slice
(
0
));
}
model
=
new
dojox
.
grid
.
data
.
Table
(
null
,
data
);
// ==========================================================================
// Tie some UI to the data model
// ==========================================================================
model
.
observer
(
this
);
modelChange
=
function
(){
dojo
.
byId
(
"rowCount"
).
innerHTML
=
'Row count: '
+
model
.
count
;
}
/*
modelInsertion = modelDatumChange = function(a1, a2, a3){
console.debug(a1, a2, a3);
}
*/
// ==========================================================================
// Custom formatters
// ==========================================================================
formatCurrency
=
function
(
inDatum
){
return
isNaN
(
inDatum
)
?
'...'
:
dojo
.
currency
.
format
(
inDatum
,
this
.
constraint
);
}
formatDate
=
function
(
inDatum
){
return
dojo
.
date
.
locale
.
format
(
new
Date
(
inDatum
),
this
.
constraint
);
}
// ==========================================================================
// Grid structure
// ==========================================================================
statusCell
=
{
field
:
2
,
name
:
'Status'
,
styles
:
'text-align: center;'
,
editor
:
dojox
.
grid
.
editors
.
Select
,
options
:
[
"new"
,
"read"
,
"replied"
]
};
gridLayout
=
[{
type
:
'dojox.GridRowView'
,
width
:
'20px'
},{
defaultCell
:
{
width
:
8
,
editor
:
dojox
.
grid
.
editors
.
Input
,
styles
:
'text-align: right;'
},
rows
:
[[
{
name
:
'Id'
,
get
:
function
(
inRowIndex
)
{
return
inRowIndex
+
1
;},
editor
:
dojox
.
grid
.
editors
.
Dijit
,
editorClass
:
"dijit.form.NumberSpinner"
},
{
name
:
'Date'
,
width
:
10
,
field
:
7
,
editor
:
dojox
.
grid
.
editors
.
DateTextBox
,
formatter
:
formatDate
,
constraint
:
{
formatLength
:
'long'
,
selector
:
"date"
}},
{
name
:
'Priority'
,
styles
:
'text-align: center;'
,
field
:
0
,
editor
:
dojox
.
grid
.
editors
.
ComboBox
,
options
:
[
"normal"
,
"note"
,
"important"
],
width
:
10
},
{
name
:
'Mark'
,
width
:
3
,
styles
:
'text-align: center;'
,
editor
:
dojox
.
grid
.
editors
.
CheckBox
},
statusCell
,
{
name
:
'Message'
,
styles
:
''
,
width
:
'100%'
,
editor
:
dojox
.
grid
.
editors
.
Editor
,
editorToolbar
:
true
},
{
name
:
'Amount'
,
formatter
:
formatCurrency
,
constraint
:
{
currency
:
'EUR'
},
editor
:
dojox
.
grid
.
editors
.
Dijit
,
editorClass
:
"dijit.form.CurrencyTextBox"
},
{
name
:
'Amount'
,
field
:
4
,
formatter
:
formatCurrency
,
constraint
:
{
currency
:
'EUR'
},
editor
:
dojox
.
grid
.
editors
.
Dijit
,
editorClass
:
"dijit.form.HorizontalSlider"
,
width
:
10
}
]]
}];
// ==========================================================================
// UI Action
// ==========================================================================
addRow
=
function
(){
grid
.
addRow
([
"normal"
,
false
,
"new"
,
'Now is the time for all good men to come to the aid of their party.'
,
99.99
,
9.99
,
false
]);
}
</
script
>
</
head
>
<
body
>
<
h1
>
dojox.Grid Basic Editing test
</
h1
>
<
br
/>
<
div
id
=
"controls"
>
<
button
onclick
=
"grid.refresh()"
>
Refresh
</
button
>
<
button
onclick
=
"grid.edit.focusEditor()"
>
Focus Editor
</
button
>
<
button
onclick
=
"grid.focus.next()"
>
Next Focus
</
button
>
<
button
onclick
=
"addRow()"
>
Add Row
</
button
>
<
button
onclick
=
"grid.removeSelectedRows()"
>
Remove
</
button
>
<
button
onclick
=
"grid.edit.apply()"
>
Apply
</
button
>
<
button
onclick
=
"grid.edit.cancel()"
>
Cancel
</
button
>
<
button
onclick
=
"grid.singleClickEdit = !grid.singleClickEdit"
>
Toggle singleClickEdit
</
button
>
</
div
>
<
br
/>
<
div
id
=
"grid"
jsId
=
"grid"
dojoType
=
"dojox.Grid"
model
=
"model"
structure
=
"gridLayout"
></
div
>
<
br
/>
<
div
id
=
"rowCount"
></
div
>
</
body
>
</
html
>
File Metadata
Details
Attached
Mime Type
text/html
Expires
Sun, Apr 6, 21:56 (2 w, 2 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
26959
Default Alt Text
test_edit_dijit.html (5 KB)
Attached To
rZEDHG ZedLegacy
Event Timeline
Log In to Comment