I have js variable value, I want to add the variable value in html page. The randomNo value change based on time.
<script>
var randomNo = 93339;
</script>
<script type="text/javascript" src="js/plugins-gen.js?ver={$randomNo}"></script>
<script type="text/javascript" src="js/core-gen.js?ver={$randomNo}"></script>
How can i get the variable value?
I'd recommend setting the attribute values with JS.
<script>
var randomNo = 93339;
document.getElementById('plugins-gen.js').src="js/plugins-gen.js?ver="+randomNo;
document.getElementById('core-gen.js').src="js/core-gen.js?ver="+randomNo;
</script>
<script id="plugins-gen.js" type="text/javascript"></script>
<script id="core-gen.js" type="text/javascript"></script>
You can't refer to Javascript variables in HTML, only in Javascript. So you need to create those script elements dynamically:
<script>
var randomNo = 93339;
var script1 = document.createElement('script');
script1.src = 'js/plugins-gen.js?var=' + randomNo;
document.head.appendChild(script1);
var script2 = document.createElement('script');
script2.src = 'js/core-gen.js?var=' + randomNo;
document.head.appendChild(script2);
</script>
If you need to do this with lots of files, you can put them all into an array and process them in a loop.
Another answer, this time with a rather different approach.
<script>
var randomNo = 93339;
var scripts = document.getElementsByTagName('script'); // all <script> tags
for (var i = 0; i < scripts.length; i++) {
scripts[i].src = scripts[i].src.replace('{$randomNo}',randomNo); // replace '{$randomNo}' with the variable's value
}
</script>
<script type="text/javascript" src="js/plugins-gen.js?ver={$randomNo}"></script>
<script type="text/javascript" src="js/core-gen.js?ver={$randomNo}"></script>
This should replace the placeholders with the actual value.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.