La ventana emergente modal es un cuadro de diálogo de Drupal que viene dentro de un iframe. Necesito activar el mouse hacia abajo en un botón de envío que está fuera de iframe cuando se hace clic en las casillas de verificación en la ventana emergente. Escribí el siguiente jquery, pero el botón no está afectando.
$('#modal-popup .form-boolean--type-checkbox').click(() => { let body = $(window.parent.document.body); console.log(body); body.find('[name="add_more_button"]').mousedown(); }); $(window.parent.document.body).find('[name="add_more_button"]').mousedown(); funciona en la consola pero no desde jQuery. ¿Por qué es esto?
Obtuve la solución después de horas de investigación. Desde iframe podemos llamar a una función de la ventana principal. Utilicé el siguiente código y funcionaba bien.
$('#modal-popup .form-boolean--type-checkbox').click(() => { window.parent.parentFunction(); }); window.parentFunction = function(){ $('[name="add_more_button"]').mousedown(); }Usé una función separada para activar el botón y usé el nombre window.FuntionName para esto. Desde la ventana emergente iframe, llamé a esta función para activar el mousedown usando window.parent.FunctionName()