Чтобы загрузить файл, вам нужен сервер, чтобы принять его и отправить ответ обратно в браузер. Затем jQuery может использовать ответ для запуска события или вызова функции. Поэтому ответ зависит от того, как ваш сервер обрабатывает загрузку.
swfUpload - это популярное решение, которое использует небольшой Flash-ролик для обработки загрузки. Для этого есть плагин jQuery, который запускает многочисленные события, которые позволяют отслеживать начало / прогресс / ошибку / завершение загрузки.