function nextFocus(thisForm,thisElement,thisEvent){ txtVal=thisElement.value; txtName=thisElement.name; frmName=thisForm.name; frmLength=parseInt(document.forms.length); var go = 0; var nxtElmnt = ""; isNetscape=(document.layers); eventChooser = (isNetscape) ? keyStroke.which : event.keyCode; which = String.fromCharCode(eventChooser).toLowerCase();
if(which > -1 && which < 10){ if(which != 1 && which != 2 && which != 3 && which != 4 && which != 5 && which != 6 && which != 7 && which != 8 && which != 9 ){ go =1; } } for(p=0;p < frmLength;p++){ if(document.forms[p].name==frmName){ elemntLength=parseInt(document.forms[p].elements.length) for(i=0;i<elemntLength;i++) { if(document.forms[p].elements[i].name == txtName) { j=i+8; if(document.forms[p].elements[j] !=null){ nxtElmnt=document.forms[p].elements[j].name; } if(document.forms[p][nxtElmnt] == null ){ go=0; } if(document.forms[p][nxtElmnt] != null){ if (document.forms[p][nxtElmnt].name.substring(0,3) == "qty" ){ if( go==1){ document.forms[p][nxtElmnt].focus(); break; } } } } } } } go =0; } 這個方法可以向下﹐但輸0時也會跳下去﹐0也跟著跳。 onkeypress="nextFocus(this.form,this,event)" 怎么使輸0這個鍵時不跳呢﹖
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;">
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;">
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;">
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;">
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;">
txtVal=thisElement.value;
txtName=thisElement.name;
frmName=thisForm.name;
frmLength=parseInt(document.forms.length);
var go = 0;
var nxtElmnt = "";
isNetscape=(document.layers);
eventChooser = (isNetscape) ? keyStroke.which : event.keyCode;
which = String.fromCharCode(eventChooser).toLowerCase();
if(which > -1 && which < 10){
if(which != 1 && which != 2 && which != 3 && which != 4 && which != 5 && which != 6 && which != 7 && which != 8 && which != 9 ){
go =1;
} }
for(p=0;p < frmLength;p++){
if(document.forms[p].name==frmName){
elemntLength=parseInt(document.forms[p].elements.length)
for(i=0;i<elemntLength;i++) {
if(document.forms[p].elements[i].name == txtName)
{ j=i+8;
if(document.forms[p].elements[j] !=null){
nxtElmnt=document.forms[p].elements[j].name;
}
if(document.forms[p][nxtElmnt] == null ){
go=0; }
if(document.forms[p][nxtElmnt] != null){
if (document.forms[p][nxtElmnt].name.substring(0,3) == "qty" ){
if( go==1){
document.forms[p][nxtElmnt].focus();
break;
}
} } } } }
}
go =0;
}
這個方法可以向下﹐但輸0時也會跳下去﹐0也跟著跳。
onkeypress="nextFocus(this.form,this,event)"
怎么使輸0這個鍵時不跳呢﹖
如﹕<tr><td><input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;"></td><td>
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;"></td></tr><tr><td>
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;"></td><td>
<input type=text onkeydown="event.keyCode = (event.keyCode == 13)?9:event.keyCode;"></td></tr>
<head>
<script>
document.onkeydown = function(){event.keyCode = (event.keyCode == 13)?9:event.keyCode;}
//上面是js的3目表达式,当按下的键是回车就转成tab,否则还按原按键走
</script>
</head>
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>无标题文档</title>
<script language="javascript">
function init(){
var ta=document.all.textf;
for(var i=0;i<12;i++){
document.getElementById("textf"+i).onkeydown=function (){
if(event.keyCode == 13){
var textid=Number(this.id.substring(5,this.id.length))+4;
if(textid<12) document.getElementById("textf"+textid).focus();
}
}
}
}
</script>
</head><body onLoad="init();">
<input type=text id="textf0" >
<input type=text id="textf1" >
<input type=text id="textf2" >
<input type=text id="textf3" ><br>
<input type=text id="textf4" >
<input type=text id="textf5" >
<input type=text id="textf6" >
<input type=text id="textf7" ><br>
<input type=text id="textf8" >
<input type=text id="textf9" >
<input type=text id="textf10" >
<input type=text id="textf11" ></body>
</html>
function init(){
var ta=document.all.textf;
for(var i=0;i<12;i++){
document.getElementById("textf"+i).onkeydown=function (){
event.keyCode = (event.keyCode == 13)?9:event.keyCode;
}
}
}
event.keyCode=9;
前天刚学的。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd"><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script language="javascript">
function init(){
var ta=document.all.abcde;
for(var i=0;i<100;i++){
document.getElementById("abcde"+i).onkeydown=function (){
if(event.keyCode == 13){
var textid=Number(this.id.substring(5,this.id.length))+2;
if(textid<100) document.getElementById("abcde"+textid).focus();
} } } }
</script>
</head>
<body onLoad="init();">
<table >
<tr>
<td nowrap> aa
<input type="hidden" name="unit22192" value="aa">
</td>
<td nowrap> 50
<input type="hidden" name="oli_qty22192" value="50">
</td>
<td nowrap>
<input type=text id="abcde1" name="qty22192" value="" >
</td>
<td nowrap>
<input type=text id="abcde2" name="re22192" value="" >
</td>
</tr>
<tr >
<td nowrap> aa
<input type="hidden" name="unit22237" value="aa">
</td>
<td nowrap> 75
<input type="hidden" name="oli_qty22237" value="75">
</td>
<td nowrap>
<input type=text id="abcde3" name="qty22237" value="" >
</td>
<td nowrap>
<input type=text id="abcde4" name="re22237" value="" >
</td>
</tr>
<tr >
<td nowrap> aa
<input type="hidden" name="unit22328" value="aa">
</td>
<td nowrap> 33
<input type="hidden" name="oli_qty22328" value="30">
</td>
<td nowrap>
<input type=text id="abcde5" name="qty22328" value="" >
</td>
<td nowrap>
<input type=text id="abcde6" name="re22328" value="" >
</td>
</tr>
</table>
</form>
</body>
</html>
我這個為何不行﹐錯在哪里﹖