3

I am using Iframes to render the embedded Docusign document. I was successfully able to sign the document in the Iframe and get redirected to my specified URL after signing.

But the Redirect URL is displayed inside the IFrame. I need to breakout of iframe and display in parent page.

I have tried the following code snippet but to no avail.

1) th:target="_parent" in the iframe tag

2) if (top !== self) top.location.href = self.location.href;

Praveen Reddy
  • 7,295
  • 2
  • 21
  • 43

1 Answers1

0

I was able to find solution for that. I just needed to catch the Docusign redirect in the Iframe and hide it.

 <iframe id ="docusignFrame" name="docusignFrame" th:src="${docusignURL}" width="100%" height="900" onLoad="(this.contentWindow.location != '' ? DocusignCompleted(this.contentWindow.location) : void(0));">
</iframe>
<script>
function DocusignCompleted(url) {
                $("#docusignFrame").hide();}
</script>
  • 1
    Your code gave an exception "Uncaught DOMException: Blocked a frame with origin "http://localhost:xxxx" from accessing a cross-origin frame. at HTMLIFrameElement.onload (http://localhost:xxxx/abc) " – JB's May 04 '18 at 10:59
  • I know your comment is old now @JB's, but the reason that is happening is because of your browser's security settings. If you're crossing domains you need to use Window.postmessage() and that only works if you have control over both domains. https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage – Josh Maag Apr 08 '20 at 14:18