Unless you create your pdf file in advanced, the only way is to encourage the user to install a “print to pdf” print driver on their computer, so they can print through that instead.
You can easily install a printer driver such as cutePDF on your own computer so as to be able to “print” anything into a PDF instead of to your printer. You can then use that to print web pages to PDF from your own browser. It is only setting it up to work for other visitors to the site that can’t be done.
What you can do is to use the data you already have, to generate a pdf, document or spreadsheet file on the server itself. You can then output that to the web page with a content-disposition as an attachment.
Not sure if it works with AJAX elements but take a look at PDFmyURL. You can put a button on your page that creates the pdf. It does work with dynamically created content.
Drawback, you can see the link and PDFmyURL logo is added to left corner. It may be removable with paid version.
There is free service which can do web to pdf conversion. Support referral detection, let’s say if you click on the link below it will convert this forum thread to PDF.
Jpopuk, maybe you could use such service?