1. Вот тут:
onclick="deleteCoord('+coordId+'); return false"
лучше бы использовать не инлайн-скрипт, а точно так же повесить обработчик при помощи jquery.
2. Содержимое модальных диалогов лучше бы хранить не в таком ужасном для редактирования виде, а сразу разместить на странице, добавив display: none в стилях.
Для отображения такого диалога достаточно изменить пару стилей. Да вы так уже делаете с .load, .responce и .error
3. В обработчике блока fail лучше бы тоже показать пользователю какое-нибудь сообщение. Замалчивание сетевых проблем - это не круто.
Кстати, почему блок success в deleteCoord отличается от остальных? Если предусмотреть вывод возможной ошибки еще и тут, то можно сократить код вот так:
function renderAfterResponce(responce) {
var checkResponce = jQuery.parseJSON( responce );
if (typeof checkResponce.error !='undefined') {
$('.error').html(checkResponce.error).show(300);
} else {
renderAll(false,responce);
$.arcticmodal('close');
}
}
...
}).success(renderAfterResponce)
.fail(...
Или так:
function addCoordHandlers(d) {
return d.success(function(responce) {
var checkResponce = jQuery.parseJSON( responce );
if (typeof checkResponce.error !='undefined') {
$('.error').html(checkResponce.error).show(300);
}else {
renderAll(false,responce);
$.arcticmodal('close');
}
})
.fail(function() {
console.log( "error" );
})
.done(function() {
$('.load').hide();
});
}
...
addCoordHandlers($.ajax({
type: 'POST',
url: '/backend/controller.php',
data: { 'action':'deleteCoord', 'coordId':coordId}
}));
4. Ну и немного придирок к коду.
Вот эти строчки вообще ничего не делают:
coordId = typeof coordId !== 'undefined' ? coordId : false;
$this = typeof $this !== 'undefined' ? $this : false;
Вот этот комментарий не соответствует коду:
// Assign handlers immediately after making the request,
// and remember the jqXHR object for this request
Написано, что jqXHR запоминается - а на самом деле он забывается почти сразу же.