EchoSign - 无法在'Document'上执行'write'?

时间:2014-07-23 12:11:43

标签: php api echosign

我在我们的网站上整合了Adobe EchoSign。但是,当我使用ajax调用EchoSign来显示小部件时,我在控制台中收到此错误:

Failed to execute 'write' on 'Document': 
It isn't possible to write into a document from an asynchronously-loaded external script unless it is explicitly opened. 
widget?f=9K4JRD4I7H`2U3Q&token=SSGROXIB69QCKZBMSSEL6ARM&_=1406108929150:1

我花了2天时间才找到问题所在,但我可以搞清楚。 实际上当加载小部件时,它包含一个脚本和一个iframe,在我的情况下是加载脚本,之后无法执行此document.write(' iframe在这里')....

我正在使用wordpress,也许与wordpress存在冲突?

我打电话给ajax:

$('#my_id').html('').load('/my_EchoSign.php', function(){

});

这是php:

$file = EchoSign\Info\FileInfo::createFromFile($filepath);

$widget = new EchoSign\Info\WidgetCreationInfo('Test createPersonalEmbeddedWidget', $file);

$personalization = new EchoSign\Info\WidgetPersonalizationInfo($recipient_email);

try{
    $result_sign = $api->createPersonalEmbeddedWidget($widget, $personalization);
}catch(Exception $e){
    print '<h3>An exception occurred:</h3>';
    var_dump($e);
}

echo $result_sign->{'embeddedWidgetCreationResult'}->javascript;

并且来自控制台的结果是,在ajax调用echosign文件并且我检查前端插入了什么后,我看到试图为小部件调用iframe的脚本并且即将出现该错误无法写入文档。

要正常工作,必须显示脚本和iframe,但在脚本停止并显示该错误后,请与我联系。

提前感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案,如果有人遇到与document.write类似的问题,你只需要将文件加载到iframe中,一切都会很好。

感谢。