В коде AMP можно изменить значение SELECT с помощью Javascript? - PullRequest
0 голосов
/ 14 октября 2019

Следующий простой код проверен действительным тестом AMP:

<!doctype html>
<html amp lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1" />
    <meta name="amp-script-src" content="sha384-nmWK8LCbqzr8UHBoek1oZxp4egaQXAmcy4oFoNAFQimJknkegs05tvZKZG7kCQR6">
    <script async src="https://cdn.ampproject.org/v0.js"></script>
    <script async custom-element="amp-script" src="https://cdn.ampproject.org/v0/amp-script-0.1.js"></script>
    <script async custom-element="amp-bind" src="https://cdn.ampproject.org/v0/amp-bind-0.1.js"></script>
    <link rel="canonical" href="https://www.translator.eu/amp/s05.html" />
    <style amp-boilerplate>body{-webkit-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-moz-animation:-amp-start 8s steps(1,end) 0s 1 normal both;-ms-animation:-amp-start 8s steps(1,end) 0s 1 normal both;animation:-amp-start 8s steps(1,end) 0s 1 normal both}@-webkit-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-moz-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-ms-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@-o-keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}@keyframes -amp-start{from{visibility:hidden}to{visibility:visible}}</style><noscript><style amp-boilerplate>body{-webkit-animation:none;-moz-animation:none;-ms-animation:none;animation:none}</style></noscript>
</head>  
  <body>
  <amp-script script="scriptik">
  <button id="knoflik">Click!</button>
  <select id="belzebub">
    <option value="1">11</option>  
    <option value="2">22</option>  
    <option value="3">33</option>  
    <option value="4">44</option>  
    <option value="5">55</option>  
    <option value="6">66</option>  
    <option value="7">77</option>  
    <option value="8">88</option>  
  </select>
</amp-script>
<script id="scriptik" type="text/plain" target="amp-script">
  const btn = document.querySelector('#knoflik');
  btn.addEventListener('click', () => {
    var se=document.getElementById("belzebub");
    if (se) se.selectedIndex=4;
  });
</script>
  </body>
</html>

После нажатия кнопки значение SELECT успешно изменяется, но отображается последний параметр (в данном случае «88»). Тот же результат получается с использованием "se.value =" и т. Д.

...