Tengo un diseño para PDF ( views/layouts/pdf.html.erb ):
<!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <script src="https://cdn.tailwindcss.com"></script> <script> function sayHello() { return "HAAHAHAhAHAAH" } </script> <style> </style> </head> <body> <%= yield %> </body> </html> Quiero usar esa función sayHello() dentro de la etiqueta ap en app/views/invoices/pdf.html.erb , que se incrusta en el yield de layouts/pdf.html.erb
Intenté llamar a sayHello() de diferentes maneras, como usar <%= javascript: sayHello()%> , etc., pero nada funciona.
También intenté mantener sayHello() en un archivo separado y luego hacer referencia a él en javascript_pack_tag en layouts/pdf.html.erb , lo que genera un error diferente.
¿Hay alguna forma de acceder a esa función en html.erb?
Dale a tu párrafo una clase así:
<p class="p_class"></p>entonces pon esto
<script> document.getElementsByClassName('p_class')[0].textContent = sayHello(); </script> en la parte inferior de su app/views/invoices/pdf.html.erb parcial.