我有一些代码,但是它不起作用,可能是因为JS代码中的某些错误。我有一些英文文本,我想通过按下ENTER键将文本切换为另一种语言,
因此,每当我按ENTER键时,我都希望获得更改文本的结果
英语->荷兰语->西班牙->英语->荷兰语->西班牙等
我下面的破损代码:)
<p id="language">English</p>
function myFunction() {
var demo = document.getElementById("language").value;
switch(demo) {
case "English":
text = "Dutch";
break;
case "Dutch":
text = "Spain";
break;
case "Spain":
text = "English";
break;
}
document.getElementById("language").innerHTML = text;
}
document.onkeydown = function () {
if (window.event.keyCode == '13') {
myFunction();
}
}
document.getElementById("language").innerHTML = text;
答案 0 :(得分:0)
您的text
变量位于myFunction()
中。 text
变量的范围在myFunction()
内,并且您可以在函数document.getElementById("language").innerHTML = text;
在text
外部声明myFunction
变量,以使其可全局访问。
var text = "English";
function myFunction() {
var demo = document.getElementById("language").innerHTML;
switch(demo) {
case "English":
text = "Dutch";
break;
case "Dutch":
text = "Spain";
break;
case "Spain":
text = "English";
break;
};
document.getElementById("language").innerHTML = text;
}
document.onkeydown = function () {
if (window.event.keyCode == '13') {
myFunction();
}
}
document.getElementById("language").innerHTML = text;
<p id="language">English</p>
答案 1 :(得分:0)
您的代码中有一些错误。
text
的机会。.value
中使用了document.getElementById("language")
。应该是.innerHTML
<p id="language">English</p>
<script>
var text;
function myFunction() {
text = document.getElementById("language").innerHTML;
switch (text) {
case "English":
text = "Dutch";
break;
case "Dutch":
text = "Spain";
break;
case "Spain":
text = "English";
break;
}
document.getElementById("language").innerHTML = text;
}
document.onkeydown = function() {
if (window.event.keyCode == '13') {
myFunction();
}
}
</script>