Demos

DEMO 2

This demo shows how to

This demo and demo 1 use the same SQL table, but here records flagged as deleted are also displayed.

Please note that is a live demo and your tests will be recorded in a database!
Instructions: double-click on a cell to open the row editor.

Id Name Email Start Date Salary Deleted Actions
53216hjkhkHUhuemployee@email.com2011-01-010.00
53215ccvcvcvemployee@email.com2011-01-010.00
53214Employee name...employee@email.com2011-01-010.00
53213Employee name...employee@email.com2011-01-010.00
53212Employee name...employee@email.com2011-01-010.00
53211Employee name...employee@email.com2011-01-010.00
53210Employee name...employee@email.com2011-01-010.00
53209Employee name...employee@email.com2011-01-010.00
53208Employee name...employee@email.com2011-01-010.00
53207Capotjmsosa77@hotmail.com2011-01-010.00
53206Employee name...employee@email.com2011-01-010.00
53205efsdfemployee@email.com2011-01-130.00
53204Josejmsosa77@hotmail.com2011-01-010.00
53203Employee name...employee@email.com2011-01-010.00
53202fefsdfemployee@email.com2011-01-010.00
53201Employee name...employee@email.com2011-01-010.00
53200Employee name...employee@email.com2011-01-010.00
53199Employee name...employee@email.com2011-01-010.00
53198Employee name...employee@email.com2011-01-010.00
53197Employee name...employee@email.com2011-01-010.00
53196capotemployee@email.com2011-01-010.00
53195JUAN PEREZ PEREZemployee@email.com2011-01-010.00
53194Employee name...employee@email.com2011-01-010.00
53193JULIAN JOSEPTHjulianjoseh@email.com2011-01-010.00
53192Employee name...employee@email.com2011-01-010.00
53191Employee name...employee@email.com2012-01-010.00
53190testemployee@email.com2011-01-010.00
53189test2employee@email.com2011-01-010.00
53188testemployee@email.com2011-01-010.00
53187testbbbemployee@email.l2011-01-010.00
53186asdfasdfemployee@email.com2018-01-072.23
53185dfdemployee@email.com2011-01-010.00
53184fgfgfemployee@email.com2011-01-010.00
53183Employee name...employee@email.com2011-01-010.00
53182hjgfvih uyoiug oi hoilemployee@email.com2011-01-010.00
53181Employee name...employee@email.com2011-01-010.00
53180Employee name...employee@email.com2011-01-120.00
53179Employee name...employee@email.com2011-01-010.00
53178Employee name...employee@email.com2011-01-010.00
53177Employee name...employee@email.com2011-01-010.00
53176Employee name...employee@email.com2011-01-010.00
53175Employee name...employee@email.com2011-01-010.00
53174Employee name...employee@email.com2011-01-010.00
53173Employee name...employee@email.com2011-01-010.00
53172Employee name...employee@email.com2011-01-010.00
53171Employee name...employee@email.com2011-01-010.00
53170Employee name...employee@email.com2011-01-010.00
53169Employee name...employee@email.com2011-01-010.00
53168Employee name...employee@email.com2011-01-010.00
53167Employee name...employee@email.com2011-01-010.00
53166Employee name...employee@email.com2011-01-010.00
53165Employee name...employee@email.com2011-01-010.00
53164Employee name...employee@email.com2011-01-010.00
53163Employee name...employee@email.com2011-01-010.00
53162Employee name...employee@email.com2011-01-010.00
53161Employee name...employee@email.com2011-01-010.00
53160Employee name...employee@email.com2011-01-010.00
53159Employee name...employee@email.com2011-01-010.00
53158Employee name...employee@email.com2011-01-010.00
53157Employee name...employee@email.com2011-01-010.00
53156Employee name...employee@email.com2011-01-010.00
53155Employee name...employee@email.com2011-01-010.00
53154Employee name...employee@email.com2011-01-010.00
53153Employee name...employee@email.com2011-01-010.00
53152Employee name...employee@email.com2011-01-010.00
53151Employee name...employee@email.com2011-01-010.00
53150Employee name...employee@email.com0000-00-000.00
53149Employee name...employee@email.com2011-01-010.00
53148Ca roemployee@email.com2011-01-160.00
53147Employee name...employee@email.com2011-05-161000.00
53146Employee name...employee@email.com2011-01-010.00
53145Employee name...employee@email.com2011-01-010.00
53144Employee name...employee@email.com2011-01-010.00
53143Employee name...employee@email.com2011-01-010.00
53142Employee name...employee@gmail.com2011-01-010.00
53141employee@email.com2011-01-010.00
53140polankaemployee@email.com2011-01-010.00
53139Kozio?ekemployee@email.com2011-01-010.00
53138Ankaemployee@email.com2019-01-240.28
53137Marekemployee1@email.com2011-01-0112.25
53136Bolekemployee@email.com2011-01-010.00
53135Matolekemployee@email.com2011-01-01236.00
53134Nome del lllllll...dipendente@email.com2011-01-010.00
53133Employee name...employee@email.com2011-01-011258.02
53132Employee name...employee@email.com2011-01-010.00
53131Employee name...employee@email.com2011-01-010.00
53130Employee name...employee@email.com2011-01-010.00
53129Employee name...employee@email.com2011-01-010.00
53128Employee name...employee@email.com2011-01-010.00
53127Employee name...employee@email.com2011-01-010.00
53126Employee name...employee@email.com2011-01-010.00
53125Employee name...employee@email.com2011-01-010.00
53124Employee name...employee@email.com2011-01-010.00
53123Employee name...employee@email.com2011-01-010.00
53122Employee name...employee@email.com2011-01-010.00
53121Employee name...employee@email.com2011-01-010.00
53120Employee name...employee@email.com2011-01-010.00
53119Employee name...employee@email.com2011-01-010.00
53118Employee name...employee@email.com2011-01-010.00
53117Employee name...employee@email.com2011-01-010.00
			//ezEditTable configuration object
			var demo2Config = {
				editable: true,
				scroll_into_view: true,
				form_submit_interval: 900,
				auto_save: false,
				cell_editors:[
					{ type: 'none' },
					{ type: 'input', attributes:[['title', 'First name and last name']], allow_empty_value:true },
					{ type: 'input', attributes:[['title', 'email address']] },
					{ type: 'custom', target: 'dateEditor' },
					{ type: 'input', attributes:[['maxLength', 9], ['title', '9 digits max.']], css:'alignRight' },
					{ type: 'boolean' },
					{ type: 'command', 
						buttons:{ 
							enable: ['update', 'insert', 'delete', 'submit', 'cancel'], 
							'update': { title:'Edit row' },
							'insert': { title:'Add row'  },
							'delete': { title:'Delete row' },
							'submit': { text:'Save', title:'Save'  },
							'cancel': { text:'Close', title:'Close' }
						} 
					}
				],
				actions:{
					'update': { 
						uri: 'php/employeeUpdate.php', submit_method: 'form', form_method: 'POST', 
						param_names: ['id','name','email','startdate','salary','active']
					},
					'insert': { 
						uri: 'php/employeeInsert.php', submit_method: 'form', form_method: 'POST', 
						param_names: ['id','name','email','startdate','salary','active'],
						default_record: ['', 'Employee name...', 'employee@email.com', '2011-01-01','0', '']
					},
					'delete': { 
						uri: 'php/script.deleteEmployee.php', submit_method: 'script', bulk_delete: false,
						param_names: ['id']
					}
				},
				//Server activity callback events
				on_server_activity_start: function(o, row){ setTimeout(function(){ o.Get('divLoader').style.display = 'block';}, 5); },
				on_server_activity_stop: function(o, row){ setTimeout(function(){ o.Get('divLoader').style.display = 'none';}, 5); },
				//Data validation delegate, the script does not provide data validation tools
				validate_modified_value: function(o, colIndex, oldVal, newVal, cell, editor){
					if(colIndex==2 && oldVal != newVal){ 
						if(!et_ValidateEmail(newVal)){
							alert('Please insert a valid email!'); 
							return false;
						} else return true;
					}
					else if(colIndex == 4 && oldVal != newVal){
						if(isNaN(newVal)){
							alert('Please insert a number!');
							return false;
						} else return true;
					}
					else return true;
				},
				open_custom_editor: function(o, cell, editor){
					cell.appendChild(editor);
					editor.style.display = ''; 
				},
				close_custom_editor: function(o, cell, editor){ 
					editor.style.display = 'none';
					document.body.appendChild(editor);
					var d = o.Get('daySlc'), m = o.Get('monthSlc'), y = o.Get('yearSlc');
					d.value = '';
					m.value = '';
					y.value = '';
				},
				get_custom_editor_value: function(o, editor, colIndex){
					var strDate;
					var d = o.Get('daySlc'), m = o.Get('monthSlc'), y = o.Get('yearSlc');
					strDate = y.value+'-'+m.value+'-'+d.value;
					return strDate;
				},
				set_custom_editor_value: function(o, editor, colIndex, val){
					o.config.SetDateEditorValue(o, val, 'YMD');
				},
				//Custom toolip on row selection
				on_after_selected_row: function(o, row){ 
					if(!o.customTooltip || !demo2ActionsInfo || !row.getAttribute('id')) return;
					var recordId = row.getAttribute('id').replace('tr','');
					var actionInfo = demo2ActionsInfo[recordId]; //gets the associated actionInfo object
					var div = o.Get('divActionInfo_'+recordId);
					if(div){ div.style.display = 'block'; return; } //div already exists
					if(actionInfo && actionInfo.hasOwnProperty('createDate')){
						var locatorURL = 'http://www.infosniper.net/index.php?map_source=1&overview_map=1&lang=1&map_type=1&zoom_level=7&ip_address=';
						div = o.CreateElm('div', ['id','divActionInfo_'+recordId]);
						div.style.cssText = 'position:absolute; display:block; background:#FFFF99; border:1px solid #999; color:#000; padding:5px; margin:-70px 0 0 0px;';
						div.innerHTML = '
Created on: '+actionInfo.createDate+ ' by: '+actionInfo.originIp+'
' + '
Modified on: '+actionInfo.modDate+' by: '+(actionInfo.modIp!='' ? ''+actionInfo.modIp+'' : '')+'
' + '
Deleted on: '+actionInfo.delDate+' by: '+(actionInfo.delIp!='' ? ''+actionInfo.delIp+'' : '')+'
'; row.cells[0].appendChild(div); } }, on_before_deselected_row: function(o, row){ if(!demo2ActionsInfo || !row.getAttribute('id')) return; var recordId = row.getAttribute('id').replace('tr',''); var div = o.Get('divActionInfo_'+recordId); if(div){ div.parentNode.removeChild(div); div = null; } }, //Messages msg_submit_ok: 'Data processed successfully!', msg_confirm_delete_selected_rows: 'Are you sure you want to delete the selected record?', msg_error_occured: 'Error!' , msg_submit_unsuccessful: 'Data could not be saved correctly!', //Custom date editor function, does not belong to ezEditTable script SetDateEditorValue: function(o, val, dateType){ var date = tf_FormatDate(val, dateType); var d = o.Get('daySlc'), m = o.Get('monthSlc'), y = o.Get('yearSlc'); var day = date.getDate(), month = date.getMonth()+1, year = date.getFullYear(); d.value = day.toString().length==1 ? '0'+day.toString() : day; m.value = month.toString().length==1 ? '0'+month.toString() : month; y.value = year; } };

Top of page
E.n.j.o.y.  ads-free content!