Вы предоставляете функцию обратного вызова для $ .post, которая будет запускаться при возврате запроса.Функция server_request возвращается немедленно (т. Е. До того, как ответ станет доступен), поэтому responsesetxt будет по-прежнему нулевым.
Чтобы обойти это, вы можете добавить параметр обратного вызова в server_request, а затем выполнить его в анонимной функции, которую вы предоставляете$ .post call:
function server_request(module,section,action,data,callback) {
data['module'] = module;
data['section'] = section;
data['action'] = action;
$.post('../application/server.php', data, function(data) {
callback(data);
});
}
Затем вы можете использовать это как:
$(function() {
var module = x, section = y, data = z;
server_request(module, section, data, function(response) {
$('#result').html(response); // do stuff with your response
});
});
Проверьте стиль передачи продолжения для получения дополнительной информации (http://en.wikipedia.org/wiki/Continuation-passing_style и http://matt.might.net/articles/by-example-continuation-passing-style/).