Показать сообщение отдельно
  #4 (permalink)  
Старый 25.01.2016, 15:00
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

var old = $('#grid').html();

$("#grid").append(old + html); заменить на $("#grid").append(html);

иначе вы постоянно перезаписываете все содержимое $("#grid"), а нужно лишь добавлять к имеющемуся возвращенное сервером.

Сообщение о загрузке оформите блоком с абсолютным позиционированием, показывая его перед началом запроса и скрывая после него.

Статического кода нет, есть статичное содержимое, которое можно хранить в файлах, но зачем же плодить запросы по разным url. Пусть есть статичные файлы, передавайте серверному скрипту content.php параметр определяющий файл. Если именовать файлы по порядку, от 1 до N, то запрос:

$.ajax({
type: "GET",
url: "/content.php",
data: {page=номер файла},
....

где "номер файла" - номер определяющий запрашиваемый файл, который можно хранить в переменной как счетчик увеличивающийся при каждом запросе.

Сервер получая параметр page, проверяет по пути наличие файла и если есть таковой, то подключает его:

if(file_exists('path/' . $_GET['page'] . '.html')) include 'path/' . $_GET['page'] . '.html';


Если файла не существует, к примеру достигнут конец, то сервер ничего не вернет, и на клиенте можно так:

if(!!html) $("#grid").append(html);

Последний раз редактировалось laimas, 25.01.2016 в 15:07.
Ответить с цитированием