window.addEventListener('load', () => {
window
.fetch('https://services.share-pi.aarp.org/applications/CoreServices/WSOWebService/captcha/getWidget')
.then((resp) => resp.text())
.then(data => {
// Initialize the DOM parser
var parser = new window.DOMParser()
// Parse the text
var doc = parser.parseFromString(data, 'text/html')
// Print to console
console.log(doc.documentElement)
document.getElementById('nuCaptcha').appendChild(doc.documentElement)
})
})
<h3>NuCaptcha</h3>
<div id="nuCaptcha" class=""></div>
我正在实施NuCaptcha-与Google Captcha类似。
我正在将请求的响应打印到控制台中。当我将此响应粘贴到JSBin或空白.html中时。文件,它可以工作并且显示验证码质询,但是添加到页面的验证码似乎没有呈现。
有人对为什么会这样有任何想法吗?
最佳答案
诀窍是在粘贴下载的HTML之后执行脚本。
window.addEventListener('load', () => {
window.fetch('https://services.share-pi.aarp.org/applications/CoreServices/WSOWebService/captcha/getWidget').then((resp) => resp.text()).then(data => {
var div = document.getElementById('nuCaptcha');
div.innerHTML = data;
var script = div.getElementsByTagName('script')
for (var i = 0; i < script.length; i++) eval(script[i].innerHTML);
})
})
<h3>NuCaptcha</h3>
<div id="nuCaptcha" class=""></div>
关于javascript - NuCaptcha不渲染,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58134337/