Если страница не перегружается, то либо аякс, как написали выше, либо тупо часть контента скрывается, и вместо него показывается другая, ранее скрытая. И в том и в другом случае просто работа яваскрипта по манипуляции с элементами странички.
Судя по упомянутым пост и гет запросам, возможен вариант что страница перезагружается, а в зависимости от метода запроса, показывается разный контент, что еще проще, но в целом немного криво архитектурно. Реализуется простой проверкой на метод запроса в коде бэкенда.