[英]How to get a link to change innerHTML more than once in javascript
我试图获得一个链接,以便每次单击时更改javascript innerHTML。
function id_1(a){
var id = document.getElementById(a);
if (id.innerHTML==="innerHTML2"){
id.innerHTML="innerHTML1";
}
if (id.innerHTML==="innerHTML1"){
id.innerHTML="innerHTML2";
}
}
<a id="id" href="javascript:id_1('id')">innerHTML1</a>
我希望它改变从innerHTML1
到innerHTML2
到innerHTML1
到innerHTML2
等你点击链接。
现在只需要一次从innerHTML1
切换到innerHTML2
您需要在第二个if语句中使用else if
。
第二次单击时(内容为innerHTML2时),代码中的逻辑类似于以下内容:
因此,解决方案应如下所示:
function id_1(a){
var id = document.getElementById(a);
if (id.innerHTML=="innerHTML2"){
id.innerHTML="innerHTML1";
}else if (id.innerHTML=="innerHTML1"){
id.innerHTML="innerHTML2";
}
}
为了强调这一点,您可以使代码保持相同的方式,但可以使用return来确保仅使用一个if语句。
function id_1(a){
var id = document.getElementById(a);
if (id.innerHTML=="innerHTML2"){
id.innerHTML="innerHTML1";
return;
}
if (id.innerHTML=="innerHTML1"){
id.innerHTML="innerHTML2";
return;
}
}
您只需要在if
语句之间使用else
:
function id_1(a){
var id = document.getElementById(a);
if (id.innerHTML==="innerHTML2"){
id.innerHTML="innerHTML1";
} else if (id.innerHTML==="innerHTML1"){
id.innerHTML="innerHTML2";
}
}
如果没有else
第二if
会受到第一个if
所做更改的影响。
由于innerHTML只有两种状态,因此您实际上可以简化为:
function id_1(a){
var id = document.getElementById(a);
if (id.innerHTML==="innerHTML2"){
id.innerHTML="innerHTML1";
} else {
id.innerHTML="innerHTML2";
}
}
您只是想念另一个:
<html>
<head>
<script>
function id_1(a){
var id = document.getElementById(a);
if (id.innerHTML==="innerHTML2"){
id.innerHTML="innerHTML1";
}
else if (id.innerHTML==="innerHTML1"){
id.innerHTML="innerHTML2";
}
}
</script>
</head>
<body>
<a id="id" href="javascript:id_1('id')">innerHTML1</a>
</body>
</html>
小提琴: http : //jsfiddle.net/WCgAS/
实际上,它一直在忙碌,但是正如您所写的那样,它切换为“ innerHTML1”,然后又回到“ innerHTML2”
因此只需将第二个“如果”更改为“否则”
<html>
<head>
<script>
function id_1(a){
var id = document.getElementById(a);
if (id.innerHTML==="innerHTML2"){
id.innerHTML="innerHTML1";
}
else if (id.innerHTML==="innerHTML1"){
id.innerHTML="innerHTML2";
}
}
</script>
</head>
<body>
<a id="id" href="javascript:id_1('id')">innerHTML1</a>
</body>
</html>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.