Можно ли переслать переменную из тега сценария в текущий скрипт? Что-то вроде этого:
<script type="text/template" id="myscript" myvar="123123">
var filename = document.getElementById("myscript").myvar;
</script>
Вы можете использовать document.currentScript
для ссылки на <script>
тэг <script>
:
<script type="text/javascript" id="myscript" myvar="123123">
console.log(
document.currentScript.getAttribute('myvar')
);
</script>
Другой вариант - выбрать тег сценария, как вы бы выбрали любой элемент, с помощью querySelector
, а затем получить атрибут:
<script type="text/javascript" id="myscript" myvar="123123">
console.log(
document.querySelector('#myscript').getAttribute('myvar')
);
</script>
Но при использовании пользовательских атрибутов, вероятно, было бы более целесообразно использовать атрибут data-:
<script type="text/javascript" id="myscript" data-myvar="123123">
console.log(
document.currentScript.dataset.myvar
);
</script>
getAttribute
(но лучше использовать атрибуты данных для пользовательских атрибутов)