我有一个像bellow
这样的src脚本<script src='http://www.example.com/dosome/' + some +'/afsddfa'></script>
如何更换&#39; +某些+&#39;使用jquery
使用元素3,4,5或其他元素答案 0 :(得分:4)
考虑您正在为您的网站添加动态定位的脚本:
let src = 'http://www.example.com/dosome/' + some +'/afsddfa';
$('<script>').attr(
{
src: src,
type: 'text/javascript'
}).appendTo('body');
答案 1 :(得分:2)
<script>
$(document).ready(function(){
var some=5;
var scriptUrl='http://www.example.com/dosome/' + some +'/afsddfa';
var script = document.createElement("script");
script.setAttribute("type", "text/javascript");
script.setAttribute("src", scriptUrl);
document.getElementsByTagName("head")[0].appendChild(script);
});
</script>
此脚本将在运行时动态包含javascript文件。
执行此行document.getElementsByTagName("head")[0].appendChild(script);
后,该脚本将立即开始下载,一旦下载,该脚本将立即执行或以其他方式使用。
答案 2 :(得分:0)
您可以使用jQuery更改src:
$("script").each(function(){
var element = "/3" //added a slash so it doesnt replace other string
var old_src = $(this).attr('src');
var new_src = old_src.replace("/some", element);
$(this).attr('src', new_src);
});
当然这适用于您页面中的所有脚本,您没有在问题中指定更多信息来解释您要完成的内容,也不会卸载已加载的脚本,服务器端解决方案会更好。
这里有一个加载新脚本src的版本:
$("script").each(function(){
var element = "/3" //added a slash so it doesnt replace other string
var old_src = $(this).attr('src');
var new_src = old_src.replace("/some", element);
//load the new script
$.getScript(new_src);
$(this).attr('src', new_src);
});
使用$.getScript您可以加载新脚本并执行内容
答案 3 :(得分:0)
<script>
var some = 5;
var script = '<script src="https://www.example.com/dosome/' + some + '/asdfsaf.js"><\/script>';
document.write(script);
</script>
此脚本运行良好,我可以更改元素。