mmm, creo que un lenguaje del servidor es lo más indicado, recuerda que Javascript no tiene acceso al IO, por lo tanto no puedes emitir, por ejemplo una salida que el navegador pueda interpretar como un archivo, lo máximo usar document.write, pero éso no hará que el navegador lo descargue, solo lo muestra.
en cambio desde el servidor puedes armar una tabla HTML y generar los headers necesarios para un force-download y así el navegador emita el cuadro de dialogo de descarga, y más aún puedes usar librerías como PHPExcel en PHP para generar un autentico archivo de excel.
PD: supongo que ASP.net tendrá sus formas de generar archivos de excel, no te limites sólo a PHP, hay un abanico amplio de lenguajes a utilizar