Почему jquery replaceWith работает только с одним div?
id должен быть уникальным. Если 2 ид одинаковых $("#Post-"+i) выберет только первый. Используйте class
Потому что нужно знать основы.
Да нет, в принципе и основы знать не нужно.
Просто включить голову в режим логики
id - идентификатор
Смотрим википедию:Идентифика́тор, ID (англ. data name, identifier — опознаватель) — уникальный признак объекта, позволяющий отличать его от других объектов, т.е. идентифицировать. Примеры: лексический токен, который определяет сущность.уникальный признак
Теперь идем на викисловарь и узнаем значение слова уникальный:
единственный в своём роде, неповторимый, существующий в одном экземпляре 
Теперь уже, в принципе, должно стать понятно, в чем проблема.
Но я скажу на всякий случай: id не должны повторяться!