两个问题谁能解答?(一个切换的问题,一个身份证的问题) 1.ONKEYDOWN事件里加入 onkeydown = "fnc(event,this);"function fnc(a,b) { if (a.keyCode==13) { a.keyCode=9; }}给分吧! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 2。SUBSTRING(start,end)如18位的subString(7,14) 2。SUBSTRING(start,end)如18位的subString(7,14) 1.第一个问题,用下面的方法实现(摘自以前的帖子):<script language="javascript">var cols=2;var obj;var CanMove=false;var key;function setobj(input){ obj=input;}function init(){ document.onkeydown=keyDown; document.onkeyup=keyUp;}function keyDown(DnEvents){ var key=window.event.keyCode; if(key==8){ if(event.srcElement.tagName!="INPUT"){ event.cancelBubble = true; event.returnValue = false; return false; } } for(var i=0;i<document.forms[0].elements.length;i++) { if(document.forms[0].elements[i]==obj) { if (event.keyCode==13)//RETURN { if(i<document.forms[0].elements.length-1) { document.forms[0].elements[i+1].focus(); } } } }}function keyUp(UpEvents){ return false;}</script><body bgcolor="#FFFFFF" text="#000000" onload="init()"><form><table border="0" cellspacing="0" cellpadding="0" align="center"> <tr> <td> <input type="text" name="BALLACK" onfocus="setobj(this)"> </td> <td> <input type="text" name="BALLACK2" onfocus="setobj(this)"> </td> </tr> <tr> <td> <input type="text" name="BALLACK3" onfocus="setobj(this)"> </td> <td> <input type="text" name="BALLACK4" onfocus="setobj(this)"> </td> </tr></table></form><p align="center">回车键顺序移动</body>2.第二个问题:关于身份证的规则我查找了一下,有个页面是介绍这方面的,网址是:http://www.pep.com.cn/xs/teachers/shijianhuodongsheji/shuzidemiaoyong.htm关于取出出生日期和性别的算法如下:<script language="javascript">function outputbirthday(){ var personid; var sexid; var birthday=new String(""); personid=document.all.personid.value if (personid.length==15) { birthday="19"; for (i=6;i<=11;i++) { birthday=birthday + personid.charAt(i); } //取出性别 //sexid=personid.charAt(14); } else if (personid.value.length==18) { birthday=""; for (i=6;i<=13;i++) { birthday=birthday + personid.charAt(i); } //取出性别 //sexid=personid.charAt(16); } //分离出年、月、日 birthdayok=birthday.substring(0,4) if (birthday.charAt(4)=="0") { birthdayok=birthdayok + "-" + birthday.substring(5,6) } else { birthdayok=birthdayok + "-" + birthday.substring(4,6) } birthdayok=birthdayok + "-" + birthday.substring(6,8) //输出出生日期 alert(birthdayok); alert("生日是:" + birthdayok); //取出性别 if (sexid % 2 ==0) { alert("性别是:女"); } else { alert("性别是:男"); } }</script><body bgcolor="#FFFFFF" text="#000000" onload="init()"><input type="text" name="personid" onblur="outputbirthday();" size="20"></p></body> 其实第二个问题十分简单,首先你要判断身份证号码是15位还是18位,因为现在的身份证中有非数字,所以一定是字符串了,对15位的号码6,7位是年,89位是月,10,11是日,最后一位是奇数是男性,偶数为女性,对18位的6--9表示年,再下来的两位是月再下来是两位表示日,17位是奇数表示男性,偶数为女性,表示女,最后是校验码,具体为什么你可以到 算法 论坛去找找,讨论过的.具体代码就不用我说了.上面代码中取得sexid的部分我认为有错应该是sexid=personid.charAt(15);和sexid=personid.charAt(17);否则判断生日的部分就有错,for (i=6;i<=13;i++)和for (i=6;i<=11;i++)要改为for (i=5;i<13;i++)和for (i=5;i<=11;i++).我没有做测试,不过这样改才能统一定好字符串中各字符的位置 我在主页面创建了一个iframe,并在里面放入了一个jsp页面。我要把点击iframe时动态创建的div进行拖拽,但是出了点问题。大家帮我来看看吧! 百度联盟搜索推广合作计费网址功能是怎么实现的? 关于js 注册事件时,传参的问题 (求助)Jsp树形目录源代码 表格的高亮显示 this用法的问题 中文部分不能正常显示 如何调用iframe里的js方法?谢谢 如何找到所有对象的id开头为“xx_”的值 如何获得一个文本框中的若干选定字符串的值? 我想用递归做一个树状菜单,请问谁有递归的教程和例子? 孟子请进,是关于http://lucky.myrice.com/print.htm的
如18位的
subString(7,14)
如18位的
subString(7,14)
<script language="javascript">
var cols=2;
var obj;
var CanMove=false;
var key;
function setobj(input){
obj=input;
}function init(){
document.onkeydown=keyDown;
document.onkeyup=keyUp;
}function keyDown(DnEvents){
var key=window.event.keyCode;
if(key==8){
if(event.srcElement.tagName!="INPUT"){
event.cancelBubble = true;
event.returnValue = false;
return false;
}
} for(var i=0;i<document.forms[0].elements.length;i++)
{
if(document.forms[0].elements[i]==obj)
{
if (event.keyCode==13)//RETURN
{
if(i<document.forms[0].elements.length-1)
{
document.forms[0].elements[i+1].focus();
}
}
}
}
}function keyUp(UpEvents){
return false;
}
</script>
<body bgcolor="#FFFFFF" text="#000000" onload="init()">
<form>
<table border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td>
<input type="text" name="BALLACK" onfocus="setobj(this)">
</td>
<td>
<input type="text" name="BALLACK2" onfocus="setobj(this)">
</td>
</tr>
<tr>
<td>
<input type="text" name="BALLACK3" onfocus="setobj(this)">
</td>
<td>
<input type="text" name="BALLACK4" onfocus="setobj(this)">
</td>
</tr>
</table>
</form>
<p align="center">回车键顺序移动
</body>2.第二个问题:关于身份证的规则我查找了一下,有个页面是介绍这方面的,网址是:http://www.pep.com.cn/xs/teachers/shijianhuodongsheji/shuzidemiaoyong.htm
关于取出出生日期和性别的算法如下:
<script language="javascript">
function outputbirthday()
{
var personid;
var sexid;
var birthday=new String("");
personid=document.all.personid.value
if (personid.length==15)
{
birthday="19";
for (i=6;i<=11;i++)
{
birthday=birthday + personid.charAt(i);
}
//取出性别
//sexid=personid.charAt(14);
}
else if (personid.value.length==18)
{
birthday="";
for (i=6;i<=13;i++)
{
birthday=birthday + personid.charAt(i);
}
//取出性别
//sexid=personid.charAt(16);
}
//分离出年、月、日
birthdayok=birthday.substring(0,4)
if (birthday.charAt(4)=="0")
{
birthdayok=birthdayok + "-" + birthday.substring(5,6)
}
else
{
birthdayok=birthdayok + "-" + birthday.substring(4,6)
}
birthdayok=birthdayok + "-" + birthday.substring(6,8)
//输出出生日期
alert(birthdayok);
alert("生日是:" + birthdayok);
//取出性别
if (sexid % 2 ==0)
{
alert("性别是:女");
}
else
{
alert("性别是:男");
}
}
</script>
<body bgcolor="#FFFFFF" text="#000000" onload="init()">
<input type="text" name="personid" onblur="outputbirthday();" size="20">
</p>
</body>