日期:2014-05-18  浏览次数:20728 次

菜鸟级问题javaScript!请各位帮助!
各位大虾,我在rs。next()输出里面,有N个文本框名字是 "sco "   +   i,我想将来用户输入的时候判断输入合法性,该怎么做啊?
以下是小弟不成熟的做法,我在每次rs.next()时,都加上一段javaScript,用文本框的onBlur触发,但是根本没有反映
急求各位给各方法
小弟多谢!!
while(rs.next())
{

  <td   align= "center "> <input   name= " <%= "sco "+i%> "     type= "text "   value= " <%=rs.getFloat( "oldSco ")%> "         onBlur= "check(); "     size= "4 "   maxlength= "5 "           /> </td>
<script   language= "javascript ">
function   check()
{
var   arr=document.getElementsByName( "sco "   +   <%=i%> );      

if   (arr== " "   ||   arr <0   ||   arr> 100)
{
alert( "您的输入不符合要求! ");
return   false;
}
return   true;
}
</script>
<%
i++;
}%〉

------解决方案--------------------
首先你的Check 不用写什么doucment.getElementsByName,这样用也不对,你直接传个参数过来this,其次你要判断的是这个text输入框的value,不是这个对象本身.用this.value.
参考如下:
function check(e)
{
var txtValue = e.value ;
if(......)//这里是你的Check的业务,我就不写了

}
在你的 onBlur事件中这样写 onBlur= "check(this); "