Как через ajax запустить php, генерирующий файл?
1 — Отправить ajax запрос
2 — Дождаться ответа с ссылкой
3 — Открыть ссылку в iframe
4 — PROFIT!
А если реагировать на mousedown?
Тогда сработает до отправки формы.
На счёт данных — попробуйте создать ссылку c url вида «data:...» (wiki) и кликайте по ней с помощью jQuery, если файл не очень большой — будет работать.