首页 > 解决方案 > 如何在 JavaScript 中添加动态创建的脚本标签属性?

问题描述

我正在尝试添加data-client-key动态创建的 JavaScript 属性。检查下面的代码我已经尝试过:

var script = document.createElement("script")
script.type = "text/javascript";
script.src = 'https://app.example.com/snap/script.js';
//script.data-client-key="CLIENT-KEY-HERE"; /* showing error message */
document.getElementsByTagName(script)[0].setAttribute("data-client-key", "CLIENT-KEY-HERE"); /* Uncaught TypeError: Cannot read property 'setAttribute' of undefined */
document.getElementsByTagName("head")[0].appendChild(script);

当我检查元素时,我的输出应该如下所示:

<script src="https://app.example.com/snap/script.js" data-client-key="CLIENT-KEY-HERE"></script>

标签: javascriptload

解决方案


改变

document.getElementsByTagName(script)[0].setAttribute("data-client-key", "CLIENT-KEY-HERE");

script.setAttribute("data-client-key", "CLIENT-KEY-HERE");

因为你已经在script变量中有你的脚本元素


推荐阅读