1

我在我们的网站上集成了 Adob​​e 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('the iframe here')....

我正在使用 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,但在脚本因该错误停止后与我一起。

提前感谢您的帮助。

4

1 回答 1

1

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

谢谢。

于 2014-07-24T10:50:31.017 回答