Есть способ сделать то, что вы просите, но вам нужно будет обработать результаты самостоятельно. По сути, все ваши Ajax-вызовы имеют одинаковые параметры, но разные наборы результатов. Итак, во-первых, код на стороне клиента, который делает волшебство:
$.post('datePacked.php', {choice: dateText}, function(data) {
$('#apDiv2').html(data['dayPower']);
$('#apDiv4').html(data['dayGraph']);
$('#apDiv6').html(data['monthPower']);
$('#apDiv9').html(data['monthGraph']);
$('#apDiv8').html(data['yearPower']);
$('#apDiv10').html(data['yearGraph']);
});
Если вы реорганизовали свой HTML-код, чтобы фактически сопоставить div-идентификаторы с результатом вашего ответа JSon, вы можете еще больше упростить вызов:
$.post('datePacked.php', {choice: dateText}, function(data) {
$.each(data, function(id, value) {
$('#'+id).html(value);
});
});
На стороне сервера ваш новый datePacked.php
должен возвращать результат JSON, который предоставляет хэш имен для содержимого. По сути это будет выглядеть примерно так:
{ "dayPower" : "<p>My Content</p>", "dayGraph" : "<p>Day graph</p>", ... }
Многоточие предназначено для заполнения оставшейся части содержимого. Выбор значимых имен идентификаторов для ваших элементов HTML - это не только хорошая практика, это может сэкономить вам много повторений, если вы воспользуетесь этим. Примером этого может быть вторая форма примера клиента. Это тот случай, когда контент должен быть JSON, чтобы он работал - если только вы не хотите разделить DOM, возвращаемый сервером.