[英]Changing class of html element using Javascript and string interpolation
我有一个 ID 为“bigOne”的 HTML 元素。 它的大小由它的类和相关联的 CSS 决定。 类名是“p1”、“p2”、“p3”等,一直到“p100”。
一个页面是一个输入和一个按钮。 我正在尝试创建一个函数,以便当在输入中键入一个数字并单击按钮时,“bigOne”的类将更改为相应的数字,例如,当输入 80 并且单击按钮时,类从“ p50”到“p80”。 在我下面的代码中,我已经能够创建这个确切的场景,但我想要做的是能够输入任何数字并适当地更改类,例如提交 4 创建类 p4 或提交 99 创建类 p99 . 这就是我完全陷入困境的地方。
我确信不需要太多代码,但我就是无法得到它。
<div id="options">
<label></label>
<input id="changes" />
<button id="myButton">Submit</button>
</div>
<script type="text/javascript">
document.getElementById("myButton").onclick=function() {
if (document.getElementById("changes").value=="80") {
document.getElementById("bigOne").classList.contains('p50');
document.getElementById("bigOne").classList.toggle('p80');
}
}
</script>
由于您使用 jquery... 标记您的问题:
<script>
$(function(){
$('#myButton').click(function(){
$('#bigOne').removeClass(); //to clean old classes
//we get the value from the input and add the p class
$('#bigOne').addClass('p'+$('#changes').val());
});
});
</script>
我建议您获取输入数字的元素的值,并将其存储到下面名为“theNewClassName”的字符串中:
var theNewClassName = document.getElementById("elementToTakeValueFrom").innerHTML;
document.getElementById("elementToGiveClassTo").className = theNewClassName;
//or whatever classname you wanted it to change to
或者
document.getElementById("bigOne").className = "blablabla";
你明白了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.