Maison >interface Web >js tutoriel >Partage de code d'implémentation du programme de loterie simple JavaScript

Partage de code d'implémentation du programme de loterie simple JavaScript

黄舟
黄舟original
2017-03-13 16:52:292109parcourir

1. Description des exigences

Un tirage au sort de fin d'année pour une entreprise nécessite les fonctions suivantes

1) Le nombre maximum de participants peut être fixé en fonction de la situation réelle

2) Cliquez sur " "Démarrer", le grand écran défile, cliquez sur "Arrêter", le numéro du gagnant apparaît sur le grand écran

3) Tous les numéros des gagnants sont affichés dans l'interface

4) Aucun gagnant répété

5) Il n'y aura pas de résultats de loterie anormaux en raison d'erreurs de saisie.

2. Soumission du code

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 TRANSITIONAL//EN">   
<html>   
<head>   
<title>某公司周年庆抽奖</title>   
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">   
<script language="javascript">   
    var timer;   
    var flag = new Array(100);   
    var existingnum = new Array(100);   
    var clickTimes = 0;   
    var randnum;   
    var cellnum =1;   
    var mobile;   
    var num ;   
    function check_input(){     
        var input = document.getElementById("real_num").value;   
        var re = /^[1-9]+[0-9]*]*$/;   
        if (!re.test(input)){     
            alert("请输入正整数");     
            window.location.href=window.location.href;      
            return false;     
         }   

    }     

    //get the random numbers from the mobile array every 0.05s   
    function setTimer(){   
        timer = setInterval("getRandNum();",50);   
        document.getElementById("start").disabled = true;   
        document.getElementById("end").disabled = false;   
    }   

    function getRandNum(){   
        document.getElementById("result").value = mobile[GetRnd(0,num)];   
    }   

    function GetRnd(min,max){    
        randnum = parseInt(Math.random()*(max-min+1));   
        return randnum;   
    }   

    //------------------------------------------------   

    //turn the input&#39;s running down   
    function clearTimer(){   
        noDupNum();   
        clearInterval(timer);   
        document.getElementById("start").disabled = false;   
        document.getElementById("end").disabled = true;   
    }   
    // Re defined array:change the length of the array and delete the checked one   
    function noDupNum(){   
        mobile.removeEleAt(randnum);   
        var o = 0;   
        for(p=0; p<mobile.length;p++){   
            if(typeof mobile[p]!="undefined"){   
                mobile[o] = mobile[p];   
                o++;   
            }   
        }   
        num = mobile.length-1;   
     }   

     function setValues(){   
        document.getElementById(cellnum).value = document.getElementById("result").value ;   
        cellnum++;   
    }   

    function set_array(){   
        var real_num = document.getElementById("real_num").value ;   
        mobile= new Array(real_num);   
        var o = 0;   
        for(i=1; i<=real_num;i++){   
            mobile[o] = i;   
            o++;   
        }   
        num = mobile.length-1;   
        document.getElementById("set_number").disabled = true;   
    }   

    Array.prototype.removeEleAt = function(dx){   
        if(isNaN(dx)||dx>this.length){return false;}   
            this.splice(dx,1);   
        }   
</script>   
</head>   
<body>   
    <center>   
        <p id="main">   
            <p>   
                <h1>获奖小伙伴</h1>   
                <p>   
                    <input id="result" type="text" size="30" style="height:130px;width:800px;border:2px solid red;font-size:120;" readonly/>   
                </p>   
                <p>   
                    <input id="start" type="button" value="开始" style="border: 1px solid; border-color: #aaa 000 #000 #aaa;
                    width:4em; background: #fc0;" onclick="setTimer()" />   
                    <input id="end" type="button" value="停" style="border: 1px solid; border-color: #aaa 000 #000 #aaa;
                    width:4em; background: #fc0;"onclick="clearTimer();setValues();" disabled/>   
                </p>   
                <p><strong>一等奖(1名)</strong></p>   
                <table width="190" height="30" border="1">   
                    <tr>   
                        <td><input name="text1" type="text" id="3" style="height:30px;width:190px;border:1px solid red;font-size:25;" size="28" readonly/></td>   
                    </tr>   
                </table>   
                <p>二等奖(2名)</p>   
                <table width="380" height="30" border="1">   
                    <tr>   
                        <td><input name="text2" type="text" id="2" style="height:30px;width:190px;border:1px solid red;font-size:25;" size="28" readonly/></td>   
                        <td><input name="text3" type="text" id="1" style="height:30px;width:190px;border:1px solid red;font-size:25;" size="20" readonly/></td>   
                    </tr>   
                </table>   
            </p>   
        </p>   
        <p></p>   
        <p></p>   
        <p id="setter" style="border:1px solid;width:45em">   
            <h3>系统设置</h3>   
            <table width="300" height="30" border="1">   
                    <tr>   
                        <td>活动人数</td>   
                        <td><input type="text" id="real_num" style="width:11em"></td>   
                        <td><input id="set_number" type="button" value="设置" style="border: 1px solid; border-color: #aaa 000 #000 #aaa;
                        width:4em; background: #fc0;" onclick="check_input();set_array();"/></td>   
                    </tr>   
                    <tr>   

                    </tr>   
            </table>   
            <br/>   
            <input id="set_number" type="button" value="重新开始抽奖" style="border: 1px solid; border-color: #aaa 000 #000 #aaa;
            width:45em;height: 3em;background: #fc0;"  onclick="window.location.href=window.location.href;"/>   
            <p></p>   
        </p>   
    <center>   
</body>   
</html>

3. Captures d'écran laides

Je suis moche, mais je suis douce~


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn