我改用函数实现,结果也不行:(清空完之后就不再执行了)
<table cellspacing=1 cellpadding=1 border=0 bgcolor="#4682B4" width="850" id=t136>
<form name="frm">
 <% for i=0 to 4 %>
<tr> 
<td bgcolor="#FFFFFF" width="9%" bordercolor="#FFFFFF"><input name="kcsl<%=i%>" type="hidden" value="33">
<input  type="text" id="shliang<%=i%>" name="shliang" size="9" onKeypress="if (event.keyCode < 46 ||event.keyCode==47|| event.keyCode > 57) event.returnValue = false;" onchange="aa(<%=i%>)" ></td>
<td><input type =text onclick="if(shliang<%=i%>.value==''){alert('数量不能为空');shliang<%=i%>.focus();}" ></td></tr>
<% next %>
</form>
</table> 
<script language =javascript >
function aa(k)
{
if(eval("frm.shliang"+k).value>parseFloat(eval("frm.kcsl"+k).value))
  { var m=k+1
   alert('库存不足:'+parseFloat(eval("frm.kcsl"+k).value));
   eval("frm.shliang"+k).value='';
   eval("frm.shliang"+k).focus();
   }
}
</script>

解决方案 »

  1.   

    <table cellspacing=1 cellpadding=1 border=0 bgcolor="#4682B4" width="850" id=t136>
    <form name="frm">
     <% for i=0 to 4 %>
    <tr> 
    <td bgcolor="#FFFFFF" width="9%" bordercolor="#FFFFFF"><input name="kcsl<%=i%>" type="hidden" value="33">
    <input type =text id="shliang<%=i%>" name="shliang" size="9" style="border=0; text-align:right" onKeypress="if (event.keyCode < 46 ||event.keyCode==47|| event.keyCode > 57) event.returnValue = false;" onchange="if(this.value>parseFloat(kcsl<%=i%>.value)){alert('库存不足:'+parseFloat(kcsl<%=i%>.value));this.value='';shliang<%=i%>.focus();}"  tabindex="<%=i+2%>"></td>
    <td><input type =text onclick="if(shliang<%=i%>.value==''){alert('数量不能为空');shliang<%=i%>.focus();}" ></td></tr>
    <% next %>
    </form>
    </table>