jQuery AJAX调用数据库工作,但不是按顺序

这可能是我的代码中的其他地方的问题,但我希望这里有一个线索。

我正在使用jQuery AJAX调用来更新我的MySQL数据库,然后使用另一个来读取数据库并更新我的页面上的表。 我的问题是我正确更新数据库,但我的第二个AJAX调用(包含在函数中)返回旧数据。 但是,如果我再次启动该function,它将完美运行。

这是第一个AJAX调用:

$.ajax ({ cache: false, type: 'POST', url: 'qry_creats_record.php', data: { equipID : $('#equip_id').val(), dateSent : $('#txt_to_repair').val(), organization : $('#organization').val(), success: function() { ServiceTable($('#equip_id').val()); <--CALLS SECOND FUNCTION } } }); 

效果很好,完美地更新数据库。 然后我想用这个函数更新页面(在我第一次调用的’Success’部分中调用):

 function ServiceTable(equipID) { var serviceRecords = $.ajax ({ cache: false, type: 'POST', url: 'qry_show_repairs_table.php', async: false, data: { equip_id : equipID }, success: function() { return data; } }).responseText; $('#serviceRecordsTable').html(serviceRecords); } 

第二个函数也很好用,如果我从一个按钮调用它,则更新页面元素’serviceRecordsTable’。 但是当我从第一次调用的“成功”部分调用它时,它会返回旧的,未更新的数据。 我在第二个函数中放了一个“警告”框来查看发生了什么,它确认该函数实际上是从我的数据库中看到旧的,预先更新的数据。 但是如果我从页面上的按钮激活第二个function,则第二个function会使用新数据刷新我的页面。

真的卡住了。 任何帮助表示赞赏。

试试这样 –

 $.ajax ({ cache: false, type: 'POST', url: 'qry_creats_record.php', data: { equipID : $('#equip_id').val(), dateSent : $('#txt_to_repair').val(), organization : $('#organization').val(), }, success: function(result) { if(result=='success') { ServiceTable($('#equip_id').val()); <--CALLS SECOND FUNCTION } } }); 

从'qry_creats_record.php'返回字符串“success”。