В функции
save_lists() вам нужно вызывать
resolve(data) в случае успешного завершения запроса, и
reject(error) в случае ошибки.
В вашем случае,
resolve и
reject не передают никаких значений, поэтому функция
.then(x=>{alert('Going');}) не выполняется.
Исправленный код будет выглядеть так:
save_lists()
.then(x=>{
alert('Going');
})
save_lists() {
return new Promise(function(resolve, reject) {
$.post('/en/save-lists', {})
.done(data=>{
alert('Success:'+data);
resolve(data);
})
.fail(x=>{
alert('Error happened');
reject(x);
});
})
}
Это означает, что когда запрос завершится успешно, функция
resolve будет вызвана с передачей данных, которые вернул сервер, и функция
.then(x=>{alert('Going');}) будет выполнена.