Bog*_*dan 6 javascript javascript-events
我有一个HTML页面,其中包含:
<select>带有onchange事件的3个选项的下拉列表到JS函数这是代码:
<select onChange="getData(this.value);">
<option value="-">Limba/Language</option>
<option value="ro">Romana</option>
<option value="en">Engleza</option>
</select>
<div id="output">
<script id="widget" type="text/javascript" src="js1.js"></script>
</div>
Run Code Online (Sandbox Code Playgroud)
这是JS函数:
<script type="text/javascript">
function getData(title)
{
switch(title)
{
case "ro":
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "js1.js";
s.innerHTML = null;
s.id = "widget";
document.getElementById("output").innerHTML = s;
break;
case "en":
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "js2.js";
s.innerHTML = null;
s.id = "widget";
document.getElementById("output").innerHTML = s;
break;
default:
void(0);
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
当我选择选项2或3时,我在浏览器中获得此输出: [object HTMLScriptElement]
我想要做的是根据下拉元素中选择的值切换脚本标记的src属性.我想做这个客户端,最好没有任何外部库...
另一个解决方案很棒:)但是如果你仍然想通过JavaScript创建元素,你应该使用appendChild而不是innerHTML ...
这是你的JavaScript应该是:)
<script type="text/javascript">
function getData(title)
{
switch(title)
{
case "ro":
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "js1.js";
s.innerHTML = null;
s.id = "widget";
document.getElementById("output").innerHTML = "";
document.getElementById("output").appendChild(s);
break;
case "en":
var s = document.createElement("script");
s.type = "text/javascript";
s.src = "js2.js";
s.innerHTML = null;
s.id = "widget";
document.getElementById("output").innerHTML = "";
document.getElementById("output").appendChild(s);
break;
default:
void(0);
}
}
</script>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
27667 次 |
| 最近记录: |