@Jay M It works alright, but if I go to another page, then back to the page with the recaptcha control, I get a js error:Could not execute returned javascript: ReCAPTCHA placeholder element must be empty
Source: grecaptcha.render('QCr6nITF', {
'sitekey' : '6Ld_xv4SAAAAALuIg6cTR-Wn3Zb4dnF3vPkBbp3I'
, 'callback' : function(callback){Xojo.triggerServerEvent('QCr6nITF','Verify',[callback])}
});

Hmmm I call the reCaptcha's render JS event in the Xojo shown event. Do you mean your navigating from one WebPage to another within the Xojo app or within the browser? It must fail if the shown event is called a second time, and I was thinking I could rely on this being called once.

@Brock N Hmmm I call the reCaptcha's render JS event in the Xojo shown event. Do you mean your navigating from one WebPage to another within the Xojo app or within the browser? It must fail if the shown event is called a second time, and I was thinking I could rely on this being called once.

Yes, navigating back to the page within the app (user clicks a menu button, page is shown). Open is called once, Shown is called every time the page (and therefore control) is... um... shown.