Если используете Rest модель, то создайте resource servise пример
Для того чтобы данные не терялись (отключенный интернет) можно дублировать их в local storage
$.post - асинхронный метод - и данные в колбэк done приходят позже чем срабатывает console.log (первый), т.ч. в данном конкретно примере вернуть нельзя. Слушайте событие или используйте промисы...
Читайте документацию, для всяких "свистелок" существуют директивы в которых для манипуляций с дом используется jquery lite примеры множите посмотреть тут www.directiv.es