JavaScript实现表格表单的随机选择和简单的随机点名

目录
  • 一、表格表单的随机选择
    • 1.H5的布局
    • 2.CSS布局
    • 3.JS的布局
  • 二、简单的随机点名
    • 1.H5布局
    • 2.CSS布局
    • 3.JS布局
  • 三、可以自己暂停的随机点名

一、表格表单的随机选择

效果展示(表单内容可以根据自己需要进行修改)

1.H5的布局

第一步:

可以给整个表格内容设置一个内边距,里面的文字可以自己添加,这里用了英文乱码,没有任何的其他意义,只是一个展示效果。

可以给整个表格内容设置一个内边距,里面的文字可以自己添加,这里用了英文乱码,没有任何的其他意义,只是一个展示效果。

可以给整个表格内容设置一个内边距,里面的文字可以自己添加,这里用了英文乱码,没有任何的其他意义,只是一个展示效果。

    <div>
        <table cellpadding="10px">
            <tr>
                <td>Lorem.</td>
                <td>Ipsa.</td>
                <td>Minus.</td>
                <td>Veritatis.</td>
                <td>Doloribus.</td>
            </tr>
            <tr>
                <td>Sunt.</td>
                <td>Corrupti?</td>
                <td>In.</td>
                <td>Voluptatibus?</td>
                <td>A?</td>
            </tr>
            <tr>
                <td>Dolorem?</td>
                <td>Totam!</td>
                <td>Voluptas.</td>
                <td>Provident?</td>
                <td>Atque.</td>
            </tr>
            <tr>
                <td>Molestias!</td>
                <td>Ad.</td>
                <td>Optio!</td>
                <td>Nisi.</td>
                <td>Deleniti.</td>
            </tr>
        </table>
    </div>

第二步:

定义两个按钮,在js中设置点击事件,来完成所有的操作

    <button class="start">开始</button>
    <button class="end">结束</button>

2.CSS布局

需要给整个表格之间的外边距去除, border-collapse: collapse;使用这个,hover是为了后续实现排他思想,所进行的布局,可用用div大盒子来将表格居中,更有观赏性。

<style>
    table {
        width: 500px;
        box-sizing: border-box;
        border: 1px solid #ccc;
        text-align: center;
        border-collapse: collapse;
    }
    td {
        width: 100px;
        box-sizing: border-box;
        border: 1px solid #ccc;
    }
    .hover {
        background-color: rgba(0, 0, 0, 0.5);
    }
    div {
        width: 500px;
        margin: 50px auto;
        text-align: center;
    }
</style>

3.JS的布局

第一步:

先获取所需要的所有元素

    var tdlist = document.querySelectorAll("td");
    var btns = document.querySelector(".start");
    var btne = document.querySelector(".end");
    var table = document.querySelector("table");
    var setTime //提前定义点击事件的名称 

第二步:

设置点击事件,在设置开始的点击事件中,我们需要提前设置一个,清楚定时器效果,以注释,意义是,连续点击,不会出现bug,内次点击都是先清除上一次的点击事件,如果没有,就会出现叠加效果,整个代码就会瘫痪,无法使用,其中封装了函数,为了更方便展示排他思想的代码。

     btns.addEventListener('click', function () {
            clearInterval(setTime)//提前清除
            setTime = setInterval(change,200);
        }

    )
    btne.addEventListener('click', function () {
        clearInterval(setTime)
    })

第三步:

排他思想控制背景,需要先使用取整的方式,来得到0到19,然后通过for循环,来将所有的内容为空,然后再通过点击来结束选择,实现一个方框有背景色。

   function change() {
            var num = Math.floor(Math.random() * 20);
                // 将所有td背景颜色初始化
                for (var i = 0; i < tdlist.length; i++) {
                    tdlist[i].className = "";
                }
                tdlist[num].className = "hover";
            }

二、简单的随机点名

效果展示(可以自己修改内容)

1.H5布局

简单两个div,设置一个按钮

   <div class="a">???</div>
   <div class="b"><button>开始</button></div> 

2.CSS布局

设置一下大小,居中

  <style>
        .a{
            width: 200px;
            font-size: 50px;
            margin: auto;
            text-align: center;
        }
        .b{
            text-align: center;
        }
  </style>

3.JS布局

第一步:

获取元素

    var btn = document.querySelector('button');
    var div = document.querySelector('div');
    var username = ['张三','李四','旺旺','王五','王二'] //可以随意添加内容
    var flag = true; //设置取反
    var a; //下面的全局变量

第二步:

给按钮设置点击事件,然后进行取反,来进行定时器的随机事件,和清楚定时器。

    btn.addEventListener('click',function(){
        flag = !flag;
        if(flag==false){
     a = setInterval(function(){
            var iusername = Math.floor(Math.random()*username.length)
            div.innerHTML = username[iusername];
            btn.innerHTML = '暂停'; //给按钮从新赋值
        },50)}
        else{
            clearInterval(a);
            btn.innerHTML = '开始'; //给按钮从新赋值
        }
    })

三、可以自己暂停的随机点名

布局和上面一样,js部分有一点点变化

    btn.addEventListener('click',function(){
     a = setInterval(function(){
            var iusername = Math.floor(Math.random()*username.length)
            div.innerHTML = username[iusername];
        },50)
        setTimeout(function(){
                clearInterval(a);
            },2000)

到此这篇关于JavaScript实现表格表单的随机选择和简单的随机点名的文章就介绍到这了,更多相关JavaScript随机点名内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • JS+CSS实现随机点名(实例代码)

    HTML代码结构 <body> <div id="box">随机点名</div> <span id="span">开始</span> </body> CSS代码结构 <style> #box { width: 30%; height: 200px; background-color: rgb(233, 248, 214); border: 1px solid rgb(130, 216

  • JS实现课堂随机点名和顺序点名

    1. 效果: 2. Html代码: <body> <form> <div align="center"> <input type="button" value="开始点名" onclick="students()" class="ks"/> <input type="button" value="停止点名" onc

  • js实现随机点名程序

    最近用到了一下随机点名程序,就自己整理一下.代码实现后的截图如下. <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equ

  • js实现随机点名小功能

    本文实例为大家分享了js实现随机点名功能的具体代码,供大家参考,具体内容如下 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="name1"></div> <button id="btn"

  • 使用javascript做的一个随机点名程序

    复制代码 代码如下: <!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"

  • javascript实现的一个随机点名功能

    这个其实是对JS随机数的一个练习方式,先把所有人得名字预先写好在一个数组里,然后让数组里的值快速的显示在区域内,当你按停的时候滚动就会停止达到随机效果. <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title>JS写的随机点名 - 琼台博客</title> <script type="text/javascript">

  • JS实现随机点名器

    本文实例为大家分享了JS实现随机点名器的具体代码,供大家参考,具体内容如下 实现一个简单的随机点名器 需求分析: 两个按钮实现随机点名的开始和结束 创建ul元素,添加到父级div中,实现了每个名字需要放在一个单独的盒子中 根据随机数进行随机选择,(涉及到了两个函数 setInterval clearInterval)在选择之前,先清空盒子的所有类样式,如果被选中,则重新赋予类样式 当点击停止按钮时,根据上一步拥有重新选择出来的li标签获取标签内容,并且直接可以展示到对应的文本框. 下面开始实现

  • JavaScript实现表格表单的随机选择和简单的随机点名

    目录 一.表格表单的随机选择 1.H5的布局 2.CSS布局 3.JS的布局 二.简单的随机点名 1.H5布局 2.CSS布局 3.JS布局 三.可以自己暂停的随机点名 一.表格表单的随机选择 效果展示(表单内容可以根据自己需要进行修改) 1.H5的布局 第一步: 可以给整个表格内容设置一个内边距,里面的文字可以自己添加,这里用了英文乱码,没有任何的其他意义,只是一个展示效果. 可以给整个表格内容设置一个内边距,里面的文字可以自己添加,这里用了英文乱码,没有任何的其他意义,只是一个展示效果. 可

  • javascript创建动态表单的方法

    本文实例讲述了javascript创建动态表单的方法.分享给大家供大家参考.具体实现方法如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head>

  • JavaScript实现重置表单(reset)的方法

    本文实例讲述了JavaScript实现重置表单(reset)的方法.分享给大家供大家参考.具体如下: 下面的代码可以对表单内的输入数据进行重置 <!DOCTYPE html> <html> <head> <script> function formReset() { document.getElementById("frm1").reset(); } </script> </head> <body> &

  • JavaScript中Form表单技术汇总(推荐)

    这里不进行很复杂的后台验证以及JavaScript的正则表达式,只是简单的介绍下这个技术,简单的后台接收与跳转,大概了解怎么验证的就可以.具体的技术,我后面还会继续写博客的.本人也还在学习中. 表单验证1-简单验证 进行简单的验证,用户名必须为abcd,密码长度必须大于等于6 然后根据用户输入的数据,在后面给出提示. 代码演示: <html> <head> <title>DHTML技术演示---表单验证</title> <meta http-equiv

  • el-table树形表格表单验证(列表生成序号)

    树形表格表单验证预览 树形列表生成序号 首先需要生成一个序号用来确定表单验证的目标row,通过广度优先遍历,以1,1.1,1.1.1的规则对树形列表生成确定唯一值的索引,因为列表自身可以做CURD,因此需要每次列表的item增加或减少时重新调用生成索引的方法. setIndex = (data) => { let queue = [...data]; let loop = 0; while (queue.length > 0) { loop++ [...queue].forEach((chil

  • layui在form表单页面通过Validform加入简单验证的方法

    form简单验证 <input type="text" name="email" datatype="e" ignore="ignore" placeholder="请输入邮箱" autocomplete="off" class="layui-input"> datatype="e"验证邮箱 ignore="ignore&qu

  • 基于Ajax表单提交及后台处理简单的应用

    首先先说下表单提交吧,要提交表单那么就得先收集表单数据(至于验证这个我就不说了,要说留下下次吧),有了jquery取个html的值还是简单$("xxid").val()等就完了,但如果一张表单收集的数据很多,像这样的表单又有很多张,那用此方法肯定麻烦死,并且容易眼花录错.所以,我们就可以简单的来定义一个收集规则,如在要回传到服务器的数据表单控件,可以做个标记,到时取的时候把这些标记的数据一起取回去. 就拿最简单的文体输入做例子吧<input type="text&quo

  • jquery获取form表单input元素值的简单实例

    一般取值方法 $("#id").val(); $("#id").attr("value"); //其中value是元素的属性名如<s:textfield  id="cifName" key="cifName"   name="#request.consBean.cifName" />的id,key,name属性.取到的值是属性后对应双引号里面的字符. function sav

  • JS判断form内所有表单是否为空的简单实例

    如下所示: function checkForm(){ var input_cart=document.getElementsByTagName_r("INPUT"); for(var i=0; i<input_cart.length; i++) { if(input_cart[i].value==""||input_cart[i].value==null) { alert("信息不能为空!"); input_cart[i].focus()

  • ASP中JavaScript处理复杂表单的生成与验证第1/3页

    这里所谓的复杂表单,是指表单中包含多种不同的输入类型,比如下拉列表框.单行文本.多行文本.数值等.在经常需要更换这类表单的场合,需要有一个表单的动态生成程序.本文介绍的正是这样一个系统,它以数据库保存表单定义数据,利用ASP脚本动态生成表单HTML代码以及验证表单输入的脚本. 一.定义数据库表结构 在Web上经常可以看到"每周调查"之类的表单,这就是一种需要经常更新的表单.如果有一个动态生成表单及其验证脚本的程序,可以大大减少制作这些表单的工作量. 在本文的动态表单生成与验证示例中,我

随机推荐