Mostly likely cause is that you're pulling some value from one of the fields to build the URL for your frame. When the form is opened from the completed tasks it is equivalent to the "read only" view meaning the fields/inputs are converted into div elements.
For example, if you're using JQuery like $('#Field1').val() it will work on the "live" form, but for the read only version you have to grab the text instead.
For example,
single line change from <input> to <div type="text">
multi lines change from <textarea> <div type="textarea">
etc.
If you want the form to work in both situations, then you'll need to write your code to check whether it is in a "read only" format and change how you pull the values accordingly.
The first thing to do is inspect the page from the completed task and see what URL is being created for the iframe.