Он и так срабатывает при полностью загруженной странице.
Если хочешь именно во время загрузки - дерево DOM еще не построится и тебе нечего будет искать.
Если хочешь выполнить скрипт ПЕРЕД перезагрузкой страницы, покопай в сторону отлавливания события перезагрузки страницы, выполни свой скрипт а потом перезагрузи страницу.
Редактирую.
Вот так попробуй
$(document).ready(function(){
var $form = $('#filter'),
$controls = $form.find('input,select,textarea');
// отправка после загрузки страницы
startLoadingAnimation();
$.post("/engine/ajax/filter.php", $("#filter").serialize(), function(response){
setTimeout(function(){$('#dle-content').html(response); stopLoadingAnimation();}, 3000);
});
// отправка по клику на Enter
$controls.on('change', function(){
startLoadingAnimation();
$.post("/engine/ajax/filter.php", $("#filter").serialize(), function(response){
setTimeout(function(){$('#dle-content').html(response); stopLoadingAnimation();}, 3000);
});
});
// или отправка при любом изменении в поле
//$controls.on('keyup', function(){
// startLoadingAnimation();
// $.post("/engine/ajax/filter.php", $("#filter").serialize(), function(response){
// setTimeout(function(){$('#dle-content').html(response); stopLoadingAnimation();}, 3000);
// });
//});
});