<style>input{width:100px; height:32px;}span{display:inline-block;height:32px;width:32px;text-align:center;line-height:32px;border:1px solid red;margin-top:15px;}</style></head><body><script>window.onload=function(){ numWay(); }function numWay(){ var num_box=document.getElementById("menu_carge"); var spans=num_box.getElementsByTagName("span"); var input=document.getElementById("num"); var val=parseInt(input.value); for(var i=0; i<spans.length;i++){ spans[i].onclick=function(){ if(spans[i].className=="plus"){ input.value=val+1; } else{ input.value=val-1; } } } }</script><div id="menu_carge"><span class="cut">-</span><input type="text" id="num" value="1" /><span class="plus">+</span></div>为什么没有办法运行加减呢,哪里有问题,求指导。
4 回答
已采纳
李晓健
TA贡献1036条经验 获得超461个赞
function numWay(){
var num_box=document.getElementById("menu_carge");
var spans=num_box.getElementsByTagName("span");
var input=document.getElementById("num");
for(var i=0; i<spans.length;i++){
spans[i].onclick=function(){
var val=parseInt(input.value);
if(this.className=="plus"){
input.value=val+1;
}
else{
input.value=val-1;
}
}
}
}
lynhao
TA贡献81条经验 获得超57个赞
我用最原始的写法可以的,估计是你那个嵌套的function写错了
function numWay()
{
var num_box=document.getElementById("menu_carge");
var spans=num_box.getElementsByTagName("span");
var input=document.getElementById("num");
var val=parseInt(input.value);
for(var i=0; i<spans.length;i++){
if(spans[i].className=="plus"){
input.value=parseInt(val+1);
}
else{
input.value=parseInt(val-1);
}
}
}
<span class="cut" onclick="numWay()">-</span>
<input type="text" id="num" value="1" />
<span class="plus" onclick="numWay()">+</span>添加回答
举报
0/150
提交
取消
