日期:2014-05-20  浏览次数:20737 次

jsp onkeyup .all[]用法
最近看见一组件化分页 生成的代码如下
当前第<font color="red">1</font>页&nbsp/&nbsp共<font color="red">6</font>页
     &nbsp&nbsp<a style='color: gray;' >首页&nbsp</a><a style='color:gray;' >前一页
     &nbsp</a><a href ="javascript:prePage('2')">下一页&nbsp</a>
     <a href ="javascript:prePage('6')">末页</a>&nbsp;&nbsp;
     <a style='color: red;' href ="javascript:prePage('1')";>1&nbsp</a>
     <a href ="javascript:prePage('2')";>2&nbsp</a>
     <a href ="javascript:prePage('3')";>3&nbsp</a>
     <a href ="javascript:prePage('4')";>4&nbsp</a>
     <a href ="javascript:prePage('5')";>5&nbsp</a>
     跳到<select name=temp onchange="prePage(this.value)">
     <option  selected='selected'  value=1>1</option>
     <option  value=2>2</option><option  value=3>3</option>
     <option  value=4>4</option><option  value=5>5</option>
     <option  value=6>6</option></select>页
     <input type='text' id='txtnum' size='1' onkeyup="this.value=this.value.replace(/\D/g,'')" 
     onafterpaste="this.value=this.value.replace(/\D/g,'')">
      <input type='button' value='查询' onclick='textPage()'  /> 
      <input name="pageBean.page.pageNo" value="1"type="hidden">
<script>
function prePage(pageNum){
document.all["pageBean.page.pageNo"].value=pageNum;
document.pageForm.submit();
}
function textPage(){
if(document.getElementById('txtnum').value != '' && document.getElementById('txtnum').value <= 6){pageNum = document.getElementById('txtnum').value;document.all["pageBean.page.pageNo"].value=pageNum;
document.pageForm.submit();
}else{pageNum = 6;document.all["pageBean.page.pageNo"].value=pageNum;document.pageForm.submit();}}
</script>
能不能解释一下
onkeyup="this.value=this.value.replace(/\D/g,'')" 
onafterpaste="this.value=this.value.replace(/\D/g,'')">
javascript:prePage('1')

document.all["pageBean.page.pageNo"]
我也写过jsp 函数 用过jquery 但是没有见过这种用法 求指点 谢谢谢谢
jsp javascript function onkeyup

------解决方案--------------------
onkeyup="this.value=this.value.replace(/\D/g,'')" 
首先这是个正则式验证,用来验证输入值的规则;

当输入值的键盘抬起时触发这个事件。this.value表示此输入框的值,/\D/g为正则表达式,用来匹配所有非数字字符;

此句功能为:将输入值为非数字的字符替换为空;

这个只要你新建个页面测试下就能理解的;
------解决方案--------------------
onkeyup="this.value=this.value.replace(/\D/g,'')" 
onafterpaste="this.value=this.value.replace(/\D/g,'')">
这两个都是正则表达式替换了,楼上的都已经说过了

javascript:prePage('1')
这一行就是触发prePage('1')这个方法

document.all["pageBean.page.pageNo"]
document.all,就是获取name为"pageBean.page.pageNo"的域