jqwidgets-framework
Version:
jQWidgets is an advanced Angular, Vue, Blazor, React, Web Components, jquery, ASP .NET MVC, Custom Elements and HTML5 UI framework.
141 lines (136 loc) • 6.44 kB
HTML
<html>
<head>
<title></title>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../../../jqwidgets/styles/jqx.base.css" type="text/css" />
<link rel="stylesheet" href="../../../jqwidgets/styles/jqx.metro.css" type="text/css" />
<link rel="stylesheet" href="../../../styles/bootstrap.min.css"/>
<link rel="stylesheet" href="../../../styles/bootstrap-theme.min.css" />
<script type="text/javascript" src="../../../scripts/jquery-1.11.1.min.js"></script>
<script type="text/javascript" src="../../../scripts/bootstrap.min.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxcore.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxdata.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxbuttons.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxscrollbar.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxmenu.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxgrid.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxgrid.sort.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxgrid.pager.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxgrid.selection.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxgrid.edit.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxinput.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxmaskedinput.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxwindow.js"></script>
<script type="text/javascript" src="../../../jqwidgets/jqxvalidator.js"></script>
<script type="text/javascript">
$(document).ready(function ()
{
'use strict';
var imagerenderer = function (row, datafield, value)
{
return '<img style="margin-left: 5px;" height="100%" src="' + value + '"/>';
};
var source =
{
url: 'data.php?usedwidget=staffgrid',
datatype: 'json',
datafields: [
{ name: 'employeeID', type: 'string' },
{ name: 'name', type: 'string' },
{ name: 'title', type: 'string' },
{ name: 'photo', type: 'img' },
{ name: 'phone', type: 'int' }
]
};
var dataAdapter = new $.jqx.dataAdapter(source);
$('#staff').jqxGrid(
{
width: '100%',
source: dataAdapter,
rowsheight: 80,
height: 680,
theme: 'metro',
editable: true,
selectionmode: 'singlerow',
editmode: 'selectedrow',
columns: [
{
text: 'Photo', datafield: 'photo', width: '10%', editable: false, cellsrenderer: imagerenderer
},
{
text: 'Employee ID', datafield: 'employeeID', width: '10%', editable: false, cellsalign: 'left',
cellsrenderer: function (row, columnfield, value, defaulthtml, columnproperties)
{
return '<p class="text-format">' + value + '</p>';
},
},
{
text: 'Name', datafield: 'name', cellsalign: 'left', align: 'left', width: '30%',
cellsrenderer: function (row, columnfield, value, defaulthtml, columnproperties)
{
return '<p class="text-format">' + value + '</p>';
},
validation: function (cell, value)
{
if (value === '')
{
return { result: false, message: 'Name is required!' };
}
return true;
}
},
{
text: 'Title', datafield: 'title', align: 'left', cellsalign: 'left', cellsformat: 'c2', width: '20%',
cellsrenderer: function (row, columnfield, value, defaulthtml, columnproperties)
{
return '<p class="text-format" style="font-size:115%;margin-top:2.3em">' + value + '</p>';
},
validation: function (cell, value)
{
if (value === '')
{
return { result: false, message: 'Title is required!' };
}
return true;
}
},
{
text: 'Phone', datafield: 'phone', cellsalign: 'right', align: 'right', width: '25%',
validation: function (cell, value)
{
if (value.length !== 10)
{
return { result: false, message: 'Invalid phone number!(Length must be 10 symbols)' };
}
return true;
}
},
{
text: 'Edit', datafield: 'Edit', columntype: 'button', width: '5%', editable:false, cellsrenderer: function ()
{
return 'Edit';
}, buttonclick: function (row)
{
$("#staff").jqxGrid('beginrowedit', row);
}
}
]
});
});
</script>
<style>
.text-format {
font-size:130%;
margin-top: 2em;
margin-left: 0.4em;
}
</style>
</head>
<body>
<div class="container" style="overflow:hidden;">
<div id="staff"></div>
</div>
</body>
</html>