Программно созданная кнопка onclick выдает ошибку недопустимого значения - PullRequest
0 голосов
/ 10 мая 2019

В боковой панели сценариев Google у меня есть HTML-страница, которая создает кнопку внизу боковой панели. Кнопка генерирует «Ошибка из-за недопустимого значения в свойстве: 0» в консоли при нажатии. Когда кнопка жестко запрограммирована, работает та же функция. На экране разработчика текст кнопки в жестком коде и код кнопки, созданный в JavaScript, выглядят одинаково.

Я испробовал несколько способов создания кнопки и размещения ее в нижней части страницы, включая перемещение местоположения вызова функции и функции, при котором создается кнопка, которая при создании кнопки влияет на функциональность.

Упрощенный пример HTML, который используется для заполнения боковой панели.

<html>
<head>
<script>

   makeButton();

   function makeButton(){
   var buttontext = "Click Me";
   var func = "AddTalent(this.Parentnode)";
   var scriptcall = "google.script.run."+func";
   var outputb2 = "<p 'align=right'>"+ "<input type='button' 
   value='"+buttontext+"' onClick='"+scriptcall+"'>" + "</input>" +"</p>";
   document.getElementById("processButton").innerHTML = outputb2;
   }

</script>
</head>
<body>
....
1 or more Dropdown
1 or more sets of checkboxes
.....
<div id="processButton"></div>
</body>
</html>

Моя цель - использовать javascript для создания html-совместимой кнопки на боковой панели электронной таблицы Google, расположенной внутри элемента div или span, который при нажатии передает параметры выбора из одной или нескольких групп раскрывающихся списков и флажков в функция скрипта Google.

Любая помощь приветствуется.

1 Ответ

0 голосов
/ 10 мая 2019

В вашем коде есть синтаксические ошибки, я бы предложил использовать строки шаблона, чтобы сделать ваш код более читабельным. Но я не знаю, разрешит ли это ошибку, которую вы получаете.

function makeButton(){
  var buttontext = "Click Me";
  var func = "AddTalent(this.Parentnode)";
  var scriptcall = `google.script.run.${func}`;

  var outputb2 = `<p 'align=right'><input type='button' 
  value="${buttontext}" onClick="${scriptcall}"></input></p>`;

  document.getElementById("processButton").innerHTML = outputb2;
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...