Передача функции JavaScript делает мой вид пустым - PullRequest
0 голосов
/ 22 октября 2019

Я передаю функцию javascript через application.js в ruby ​​на рельсах , она работает в первом представлении, но когда я переключаюсь в другое представление, она не загружается,просто оставьте пустым

это application.js:

//= require rails-ujs
//= require jquery
//= require turbolinks
//= require owl.carousel
//= require jquery.lazyload
//= require tinymce-jquery
//= require activestorage
//= require_tree .
    function addView(){
      atOptions = {
        'key' : 'xxxxxxxxxxxxxxxxxxxxx',
        'format' : 'iframe',
        'height' : 250,
        'width' : 300,
        'params' : {}
      };
      document.write('<scr' + 'ipt type="text/javascript" src="http' + (location.protocol === 'https:' ? 's' : '') + '://www.bcloudhost.com/ecd09eb0e13224fce209c614c8e4ea98/invoke.js"></scr' + 'ipt>');
    }

, тогда я вызываю эту функцию в частичном представлении следующим образом: _article.html.erb

  <div class="side">
      <script type="text/javascript">
        addView();
    </script>
  </div>

это сообщение, которое я получил с консоли

Uncaught DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node.

Буду очень признателен, если вы поможете с этой проблемой.

1 Ответ

0 голосов
/ 22 октября 2019

Прежде всего, вы пытаетесь встроить тег скрипта в другой. Во-вторых, вы просто встраиваете файл JS в документ, который, похоже, не помогает при рендеринге чего-либо на веб-странице. Если вы можете поделиться своим полным фрагментом кода, это может помочь.

Также, глядя на указанную вами ошибку, кажется, что ваш код пытается удалить элемент dom, используя его родительский элемент. Но здесь родительский элемент не содержит целевой элемент (который вы пытаетесь удалить) в своем дочернем дереве dom. Следовательно, ошибка брошена.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...