Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

155
Views
¿Cómo puedo editar html dentro de un iframe usando javascript?

Estoy trabajando en la automatización de un proceso dentro de mi empresa, parte del cual es enviar un correo electrónico a través de SalesForce. No tenemos acceso a la API de SF y el correo electrónico debe enviarse a través de Salesforce para que los compañeros de trabajo puedan buscar la comunicación.

Necesito usar una plantilla que se pueda seleccionar en SalesForce, sin embargo, esta función no funciona en IE (que usa nuestra solución RPA), por lo que necesito crear este correo electrónico desde cero.

Veo dos opciones para esto:

  1. Use el HTML para recrear el formato con las variables correctas. Esto implica insertar/inyectar/manipular HTML.
  2. Copie el formato en la memoria/el portapapeles, edítelo programáticamente y péguelo en la interfaz de SF

Esta pregunta será sobre la opción 1. Publicaré una pregunta adicional con respecto a la segunda opción por separado y editaré esta pregunta para incluir ese enlace. EDITAR: ¡ Aquí está el enlace a la otra pregunta!

Pasemos ahora a la pregunta: utilizamos el paquete de software Blue Prism RPA. Tiene la posibilidad de insertar fragmentos de javascript en un sitio web y luego invocarlos. Tenía la esperanza de poder crear un fragmento de javascript que recrea la plantilla, insertarlo y luego invocarlo. He estado trabajando en esto durante la semana pasada y casi no he avanzado más.

Ahora puedo agregar texto básico en el campo requerido, pero descubrí que para poder usar la estructura de la plantilla necesito usar un campo diferente, basado en HTML. Este campo que encuentro vive dentro de un iframe.

No he tenido ninguna experiencia con javascript antes de esta semana (afortunadamente, parece similar a c# en el que tengo experiencia) y ahora este iframe me tiene perplejo. Aparentemente, cuando usa Selenium o similar, puede cambiar el controlador al nuevo iframe, pero no tengo esa opción, debe hacerse a través de la automatización de la superficie. Dentro de javascript, así como de la consola, no puedo hacer que apunte al documento separado dentro del iframe. Aparentemente, los contenidos del iframe no se incorporan de esa manera en la página web más grande.

Entonces mi pregunta es esta: ¿Cómo puedo "cambiar el enfoque" al iframe usando javascript? ¿Cómo puedo editar el contenido del iframe a través de javascript? ¡Cualquier ayuda, consejos, etc. sería muy apreciada!

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Si va a las herramientas de desarrollo en el navegador (F12 o haga clic con el botón derecho en inspeccionar), puede usar la herramienta de inspección para obtener la ruta que está buscando. un iframe es solo otra ventana dentro de la ventana y una vez que tenga la 'ruta base', puede extenderse más hacia la ventana desde la ruta base del iframe.

Puede acceder a los marcos de una de las dos formas que conozco;

 document.getElementById('the frame you are looking for goes here').contentWindow.targetFunction();

y/o

 window.frames[0].otherfunctions

donde 0 es el orden N de marco en la ventana en caso de que haya otros.

una vez que encuentre esa ruta, puede interactuar con los subelementos en ese iframe al obtener la ruta desde dentro del iframe.

algunas cosas a tener en cuenta. los marcos aún no se cargan, así que asegúrese de que el marco que desea esté cargado y que ningún otro marco lo esté moviendo por la pantalla en tiempo de ejecución. También asegúrese de que el marco secundario esté en el mismo dominio, creo que llamar a javascript tiene problemas cuando se cruza entre dominios, es decir, no funciona (es posible que se corrija allí, aunque tal vez dependa de la configuración del grupo)

Proporcione algún código o el diseño de la página y podría darle un ejemplo de código, pero en mi opinión, el formato se verá así

var doc = ventana.frames[0] var cosa = getElementById(doc.getElementByPath('maybePath')

'realiza algunas operaciones de configuración como establecer HTML interno para lo que deseas

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!