JS从内部获取脚本参数
JS Get script parameters from inside?
我有一个脚本"myscript.js",我像这样嵌入:
<script type="text/javascript" src="myscript.js" data-param="{'param1':true,'param2':false}"></script>
如何在 myscript.js 中获取data-param
的值?我宁愿在没有jQuery的情况下这样做。
附言。我曾经看到过这样的事情:<script src="myscript.js,param3">
- 如果我这样做,我会怎么param3
?
像这样:
var param = document.getElementsByTagName("script")[0].getAttribute("data-param");
这假设你只有 1 个脚本(因此[0]
)——如果你有更多,那么,你必须循环并获得正确的值。
获取页面中的最后一个脚本元素,并使用getAttribute
获取参数。最后一个脚本元素始终是当前脚本元素,因此无需使用 ID。
// Get all script tags
var scriptElements = document.getElementsByTagName("script");
// Get the number of scripts
var numberOfScripts = scriptElements.length;
// The current script is the last script in the list
var currentScript = scriptElements[numberOfScripts - 1];
// Now you can retrieve the attribute
var param = JSON.parse(currentScript.getAttribute("data-param"));
这是相同的,只是更短且可读性较差:
var scriptElements = document.getElementsByTagName("script");
var param = JSON.parse(scriptElements[scriptElements.length - 1].getAttribute("data-param"));
相关文章:
- 测试mongo脚本中是否存在参数
- 建议将包含不同参数的内联JS转换为外部脚本
- 如何参数化ajax TruClient脚本中的值
- 在GoogleWebApp脚本中,Cant似乎无法将多个参数从JS传递到HTML
- 如何在谷歌电子表格脚本中测试范围参数的类型
- ExternalInterface为我提供了在使用多个参数时停止脚本的选项.为什么?
- 谷歌应用脚本中的 UrlFetchApp.fetch 删除 url 参数
- 将参数传递到外部 JS 脚本的最佳方法
- 传递php字符串作为php脚本中调用的javascript函数的参数
- jQuery脚本,它搜索现有的查询参数并且不添加“"如果存在
- 如何使用参数调用java脚本函数,其中参数来自字符串变量
- Python CGI脚本,我无法通过'+'加号运算符作为参数
- 谷歌电子表格:为带有参数的按钮指定一个脚本
- PHP-如何让别人可以'不要更改url中的参数,也不要在刷新页面时再次运行脚本
- 如何将参数从python脚本传递到html文件并获得输出
- 将命令行参数发送到 npm 脚本
- 如何从批处理文件调用一个带有2个参数的java脚本函数,并将结果返回到环境变量
- JS从内部获取脚本参数
- 打字脚本:参数类型函数不能分配给参数类型函数
- 流星:使外部脚本参数响应