<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
提交
取消