<!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=UTF-8">
<title>Insert title here</title>
</head>
<script type="text/javascript">
var num = new Array(4);
var num1_y;
var num1;
var num2_y;
var num2;
var num3_y;
var num3;
var num4_y;
var num4;
function start(){
for(i = 0;i<num.length;i++){
temp = rondomgame();
if(temp == 10){
temp = rondomgame();
i--;
continue;
}
for(j = 0;j<i;j++){
if(temp == num[j]||temp == 10){
temp = rondomgame();
j = -1;
continue;
}
}
num[i]=temp;
}
}
function rondomgame(){
return Math.ceil(Math.random()*10); //Math.random()生成随机数(1>num>=0) Math.ceil(num);大于
num的最小整数
}
function up(obj){
//弹上来的时候
switch(obj.name){
case "num1":
num1 = obj.value;
checknum(obj,num1,num1_y);
break;
case "num2":
num2 = obj.value;
checknum(obj,num2,num2_y);
break;
case "num3":
num3 = obj.value;
checknum(obj,num3,num3_y);
break;
case "num4":
num4 = obj.value;
checknum(obj,num4,num4_y);
break;
}
if(!checkexist(obj.name,obj.value)){
obj.value = "";
}
}
//检查text
function checknum(obj,num_n,num_y){
if(isNaN(num_n)){
if(isNaN(num_y)){
obj.value = "";
}else{
if(num_y.length>1){
obj.value = "";
}else{
obj.value = num_y;
}
}
}else{
if(num_n.length>1){
if(num_y.length>1){
obj.value = "";
}else{
obj.value = num_y;
}
}
}
}
//判断是否已经存在该数据了
function checkexist(name,value){
var arry = new Array(3);
switch(name){
case "num1":
arry[0]="num2";
arry[1]="num3";
arry[2]="num4";
return checkvalue(arry,value);
break;
case "num2":
arry[0]="num1";
arry[1]="num3";
arry[2]="num4";
return checkvalue(arry,value);
break;
case "num3":
arry[0]="num2";
arry[1]="num1";
arry[2]="num4";
return checkvalue(arry,value);
break;
case "num4":
arry[0]="num2";
arry[1]="num3";
arry[2]="num1";
return checkvalue(arry,value);
break;
}
}
function checkvalue(arry,value){
for(i = 0;i<arry.length;i++){
if(!checkvalueok(arry[i],value)){
return false;
}
}
return true;
}
function checkvalueok(name,value){
if(trim(document.getElementById(name).value)==trim(value)){
return false;
}else{
return true;
}
}
//去掉空格
function trim(str)
{
var result;
result = str.replace(/(^/s+)|(/s+$)/g,"");
return result;
}
function down(obj){
//按下去的时候
switch(obj.name){
case "num1":
num1_y = obj.value;
break;
case "num2":
num2_y = obj.value;
break;
case "num3":
num3_y = obj.value;
break;
case "num4":
num4_y = obj.value;
break;
}
}
function isempty(name){
var value = trim(document.getElementById(name).value);
if(value==""|value=="undefined"|value==null){
return false;
}else{
return true;
}
}
function end(){
var array = new Array(4);
array[0]="num1";
array[1]="num2";
array[2]="num3";
array[3]="num4";
for(i=0;i<array.length;i++){
if(!isempty(array[i])){
return;
}
}
var value = new Array(4);
for(i=0;i<array.length;i++){
value[i]=trim(document.getElementById(array[i]).value);
}
var count=0 ;
var okcount = 0;
for(i=0;i<array.length;i++){
for(j=0;j<value.length;j++){
if(num[i]==value[j]){
count++;
}
}
}
for(i=0;i<array.length;i++){
if(num[i]==value[i]){
okcount++;
}
}
alert(num+"--"+value+"==="+count+"''''"+okcount);
if(okcount==4){
alert("恭喜您猜对了");
}else{
var array = new Array(4);
array[0]="num1";
array[1]="num2";
array[2]="num3";
array[3]="num4";
insertempty(array);
addRow(value,okcount+"A"+(count-okcount)+"B");
}
}
function insertempty(array){
for(i=0;i<array.length;i++){
document.getElementById(array[i]).value="";
}
}
//为table动态添加行
function addRow(value,result){
var table1 = document.getElementById("result");
var tr1 = document.createElement("tr");
var array = new Array(2);
array[0]=value;
array[1]=result;
for(var j=0;j<2; j++)
{
var td1 = document.createElement("td");
var tn = document.createTextNode(array[j]);
td1.appendChild(tn);
tr1.appendChild(td1);
}
table1.childNodes[1].appendChild(tr1);
}
</script>
<body>
<form>
<input type="button" value="猜数字游戏开始" οnclick="start();">
<hr>
请输入4个数字:
<input type="text" value="" id="num1" name="num1" size="1"
onkeyup="up(this);" onkeydown="down(this);">
<input type="text" value="" id="num2" name="num2" size="1"
οnkeyup="up(this);" οnkeydοwn="down(this);">
<input type="text" value="" id="num3" name="num3" size="1"
οnkeyup="up(this);" οnkeydοwn="down(this);">
<input type="text" value="" id="num4" name="num4" size="1"
οnkeyup="up(this);" οnkeydοwn="down(this);">
<input type="button" value="确认" οnclick="end();" >
</form>
<hr>
<table border="1" id="result">
<tr>
<td>您猜的数字</td><td> 结果 </td>
</tr>
</table>
</body>
</html>
生成随机数,取随即数的整数,动态添加表格的行,去掉js字符串的空格