<table>
<tr> 
<td>1</td> 
<td><span onclick="changeNum(this,1)" style="cursor:pointer;">+</span><input type="text" /><span onclick="changeNum(this,-1)" style="cursor:pointer;">-</span></td> 
</tr> 
<tr> 
<td>2</td> 
<td><span onclick="changeNum(this,1)" style="cursor:pointer;">+</span><input type="text" /><span onclick="changeNum(this,-1)" style="cursor:pointer;">-</span></td> 
</tr> 
<tr> 
<td>3</td> 
<td><span onclick="changeNum(this,1)" style="cursor:pointer;">+</span><input type="text" /><span onclick="changeNum(this,-1)" style="cursor:pointer;">-</span></td> 
</tr> 
</table> 
<script type="text/javascript">
function changeNum(obj,num)
{
var input = getParent(obj).getElementsByTagName("input"); 
for(var i=0;i<input.length;i++) 

if(input[i].type=="text") 

if(input[i].value == "") 
input[i].value = num; 
else 
input[i].value = input[i].value - 0 + num; 


}
//获取父级对像
function getParent(obj)
{
if(typeof(obj) != "object"){obj = document.getElementById(obj);} 
if(obj) 
return obj.parentElement || obj.parentNode; 
}
</script>

解决方案 »

  1.   

        function changeNum(obj, num) {
            var input = getParent(obj).getElementsByTagName("input"),v;
            for (var i = 0; i < input.length; i++) {
                if (input[i].type == "text") {
    //////////////////////////
                    v = input[i].value;
                    if (v == '') v = 0;
                    v = parseInt(v, 10) + num;
                    if (v < 0) v = 0;
    //////////////////////////
                    input[i].value=v
                }
            }
        }