UNPKG

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
<!DOCTYPE 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>