I have a form that contains submit buttons to "Add," "Edit," or "Delete" records from a database. I am using the following jQuery code to accomplish the desired action.
The above script works fine for a single preset ('edt' in this case) type of submit. I need to determine the specific type of submit (add, edt, del) so that the update type variable can be changed to reflect the actual type.Code:// Action to run on submit to add/edit/delete record from database var request; // variable to hold request // bind to the submit event of our form $("#form_edit").submit(function(event){ // abort any pending request if (request) { request.abort(); } // setup local variables var $form = $(this); // select and cache all the fields var $inputs = $form.find("input, select, textarea"); // serialize the data in the form var serializedData = $form.serialize(); // disable the inputs for the duration of the ajax request $inputs.prop("disabled", true); // define constants to be passed as parameters var updateType = "edt"; var tableName = "myTable"; var indexName = "myID"; var recNumber = formID.value; // Build string for query input var type = "?type=" + updateType; var table = "&table=" + tableName; var index = "&index=" + indexName; var rec = "&rec=" + recNumber; var getS = type + table + index + rec; // execute request to update database request = $.ajax({ url: "files_json/update_Record.php" + getS, type: "post", data: serializedData }); // callback handler called on success request.done(function (response, textStatus, jqXHR) { console.log("Data record updated!"); // log success message to the console }); // callback handler called on failure request.fail(function (jqXHR, textStatus, errorThrown) { console.error( "The following error occured: " + textStatus, errorThrown ); // log the error to the console }); // callback handler called regardless if the request failed or succeeded request.always(function () { $inputs.prop("disabled", false); // reenable the inputs }); // prevent default posting of form event.preventDefault(); }); // End of submit function
Further, I would like to be able to somehow "pass" the "tableName" and "indexName" variables so that the script will work as a generic script for multiple forms (representing updates to multiple tables).
TIA for any assistance
jdadwilson



Reply With Quote
Bookmarks