jQuery UI Widgets › Forums › Grid › Custom 'deleterow' function
Tagged: customized deleterow, deleterow
This topic contains 3 replies, has 2 voices, and was last updated by Peter Stoev 11 years, 6 months ago.
-
Author
-
Hi JQWidgets users,
I’d like to know if the ‘deleterow’ is a generic function of the JQW grid system or it can be copied and customized? I.E. I’m using this function to set a flag “deleted” to 1 in a database :
deleterow: function (rowid, commit) { // synchronize with the server - send delete command var data = "recycle=true&id=" + rowid; $.ajax({ dataType: 'json', url: 'grid/jqwidgets/controllers/trash_files_controller.php', data: data, success: function (data, status, xhr) { // delete command is executed. commit(true); } }); },
but I also need another function (let’s call it ‘delete_forever’) which will permanently delete the row :
delete_forever: function (rowid, commit) { // synchronize with the server - send delete command var data = "delete_forever=true&id=" + rowid; $.ajax({ dataType: 'json', url: 'grid/jqwidgets/controllers/trash_files_controller.php', data: data, success: function (data, status, xhr) { // delete command is executed. commit(true); } }); },
This is NOT working and I’m not sure why… Does the library recognize at all this function name (‘delete_forever’) or those functions are generic (deleterow, updaterow, etc, etc…)?
Thank you in advance.Hi dujmovicv,
If you want to delete a row in jqxGrid, you should use its “deleterow” method.
If you want to synchronize the deleted row with your server, you should define a “deleterow” function to the source object associated to the jqxGrid. The Grid’s deleterow method will internally call the “deleterow” function(if it is defined).Best Regards,
Peter StoevjQWidgets Team
http://www.jqwidgets.comI see. So I cannot define a new method ‘delete_forever’ (as mentioned above). Is there a way to pass another variable (do_what) to the method ‘deleterow’ to set the ‘data’ dynamically? I.E. :
deleterow: function (rowid, commit) { // synchronize with the server - send delete command switch (do_what) { case 'restore': var data = "restore_file=true&id=" + rowid; break; case 'delete_forever': var data = "delete_forever=true&id=" + rowid; break; } $.ajax({ dataType: 'json', url: 'grid/jqwidgets/controllers/trash_files_controller.php', data: data, success: function (data, status, xhr) { // delete command is executed. commit(true); } }); },
Thank you in advance.
Best regards.Hi dujmovicv,
It depends on your scenario how you define your “deleterow” function. There are only 2 things to keep in mind – call commit(true) if the synchronization is OK(that will confirm the changes in the UI) and call commit(false) if the synchronization fails(that will cancel the UI updates. The “deleterow” function’s name should be “deleterow” Otherwise, it will not be called.
Best Regards,
Peter StoevjQWidgets Team
http://www.jqwidgets.com -
AuthorPosts
You must be logged in to reply to this topic.