tui-grid
Version:
TOAST UI Grid : Powerful data grid control supported by TOAST UI
134 lines (130 loc) • 4.7 kB
HTML
<html lang="ko">
<head>
<meta charset="utf-8">
<title>4. Input types</title>
<link rel="stylesheet" type="text/css" href="./css/tui-example-style.css" />
<link rel="stylesheet" type="text/css" href="../dist/tui-grid.css" />
</head>
<body>
<div class="description">
You can see the tutorial <a href="https://github.com/nhnent/tui.grid/blob/master/docs/input-types.md" target="_blank">here</a>.
</div>
<div class="code-html contents">
<div id="grid"></div>
</div>
</body>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.11.0/jquery.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/backbone.js/1.3.3/backbone.js"></script>
<script type="text/javascript" src="https://uicdn.toast.com/tui.code-snippet/v1.5.0/tui-code-snippet.js"></script>
<script type="text/javascript" src="../dist/tui-grid.js"></script>
<script type="text/javascript" src="./data/basic-dummy.js"></script>
<script type="text/javascript" class="code-js">
var grid = new tui.Grid({
el: $('#grid'),
scrollX: false,
scrollY: false,
columns: [
{
title: 'Name',
name: 'name',
onBeforeChange: function(ev){
console.log('Before change:' + ev);
},
onAfterChange: function(ev){
console.log('After change:' + ev);
},
editOptions: {
type: 'text',
useViewMode: true
}
},
{
title: 'Artist',
name: 'artist',
onBeforeChange: function(ev){
console.log('Before change:' + ev);
ev.stop();
},
onAfterChange: function(ev){
console.log('After change:' + ev);
},
editOptions: {
type: 'text',
maxLength: 10,
useViewMode: false
}
},
{
title: 'Type',
name: 'typeCode',
onBeforeChange: function(ev){
console.log('Before change:' + ev);
},
onAfterChange: function(ev){
console.log('After change:' + ev);
},
editOptions: {
type: 'select',
listItems: [
{ text: 'Deluxe', value: '1' },
{ text: 'EP', value: '2' },
{ text: 'Single', value: '3' }
],
useViewMode: true
}
},
{
title: 'Genre',
name: 'genreCode',
onBeforeChange: function(ev){
console.log('Before change:' + ev);
},
onAfterChange: function(ev){
console.log('After change:' + ev);
},
editOptions: {
type: 'checkbox',
listItems: [
{ text: 'Pop', value: '1' },
{ text: 'Rock', value: '2' },
{ text: 'R&B', value: '3' },
{ text: 'Electronic', value: '4' },
{ text: 'etc.', value: '5' }
],
useViewMode: true
},
copyOptions: {
useListItemText: true // when this option is used, the copy value is concatenated text
}
},
{
title: 'Grade',
name: 'grade',
onBeforeChange: function(ev){
console.log('Before change:' + ev);
},
onAfterChange: function(ev){
console.log('After change:' + ev);
},
copyOptions: {
useListItemText: true
},
editOptions: {
type: 'radio',
listItems: [
{ text: '★☆☆☆☆', value: '1' },
{ text: '★★☆☆☆', value: '2' },
{ text: '★★★☆☆', value: '3' },
{ text: '★★★★☆', value: '4' },
{ text: '★★★★★', value: '5' }
],
useViewMode: true
}
}
]
});
grid.setData(gridData);
</script>
</html>