Кордова - обратный вызов ExecuteScript, когда я нажимаю кнопку отправки

В настоящее время я работаю с inAppBrowser, чтобы открыть внешнее веб-приложение, я использовал executeScript и загрузил внешние js для взаимодействия с DOM, есть ли способ запустить обратный вызов, когда я нажимаю кнопку отправки? или способ доступа к dom без executeScript? Что мне нужно сделать, так это запустить обратный вызов при событии щелчка, потому что мне нужно передать localStorage перед изменением домена.

index.js

onDeviceReady: function() {
  if (navigator.connection.type == Connection.NONE) { 
    navigator.notification.alert('An internet connection is required to continue');
  } else {
    var options = "location=no,hidden=no";
    var ref = cordova.InAppBrowser.open('extSite', '_blank', options);
    ref.addEventListener('loadstop', function(event){
      console.log("il link e' " +event.url);
      if(event.url.startsWith("extSite")){ 
      ref.executeScript({
        file:'extfile'
      });
    }
  });
 }
}

extfile.js

document.getElementById('LoginButton').addEventListener('click', function(){
    if (document.getElementsByName("RememberLogin")[0].checked==true){
        var usr = document.getElementsByName('Username')[0].value;
        var psw = document.getElementsByName('Password')[0].value;
         if ((usr!="") && (psw!="")){
            localStorage.setItem('Username', usr);
            localStorage.setItem('Password', psw);
            alert('data saved');
         }
    }
    else {
        localStorage.removeItem("Username");
        localStorage.removeItem("Password");
    }
});

person LucaBrg    schedule 07.06.2019    source источник
comment
Вы можете использовать postMessage API: см. Здесь   -  person DaveAlden    schedule 07.06.2019
comment
Привет, Дейв, я видел ваши ответы на похожие вопросы, но с postMessage, когда я пытаюсь использовать webkit.messageHandlers.cordova_iab.postMessage, я получаю сообщение об ошибке: Uncaught reference webkit, кроме того, я уже установил невыпущенную версию inappbrowser, которая реализует postMessage.   -  person LucaBrg    schedule 07.06.2019
comment
См. мой тестовый проект, который ссылается на моя тестовая страница содержания - протестировано и работает на Android и iOS   -  person DaveAlden    schedule 07.06.2019
comment
спасибо за ответы, попробовал ваш тестовый проект. Если я попытаюсь открыть свой сайт в вашем проекте, все будет работать, вместо этого, если я попробую postmessage в моем проекте, webkit не определен, это то, что я получу ... Решения?   -  person LucaBrg    schedule 10.06.2019
comment
Вам необходимо установить плагин inappbrowser прямо из репозитория github (v3.1.0-dev) в качестве сообщения postMessage функциональность отсутствует в последней версии npm (v3.0.0)   -  person DaveAlden    schedule 10.06.2019
comment
Я решил, спасибо   -  person LucaBrg    schedule 11.06.2019