PHP 必须勾选用户协议,javascript实现用户必须勾选协议实例讲解

在js中设置用户必须阅读完某项协议 才能勾选登陆或注册 (disabled的使用技巧)

仔细观看两张图片画圈部分是不一样的

当滚轮在上面时下面的表单是不可选中的

第二张在底部表单是可选中的

0378693977134b2b86528d7921b6c41f.png

144be375701506630ec36b4bc275666d.png

其中方法为为监听这个滚轮,当滚轮到达底部时 表单变为可选中状态

info.scrollHeight - info.scrollTop == info.clientHeight //判断滚条是否到达了底部

#info{

width: 200px;

height: 500px;

background-color: #00FFFF;

overflow:auto;

}

window.onload = function(){

/*

*垂直滚动条到底时表单项可用

* onscroll

* 该事件会在滚动条滚动时触发

* */

var info = document.getElementById("info");

var inputs = document.getElementsByTagName("input");

info.onscroll = function(){

//检查滚动条是否滚动到底了

if(info.scrollHeight - info.scrollTop == info.clientHeight){

//滚动条到底表单项可用

inputs[0].disabled = false;

inputs[1].disabled = false;

}

}

}

欢迎新用户注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

亲爱的用户请仔细阅读一下协议如果不仔细你将不能成功注册

我已仔细阅读协议,一定遵守

这个方法在chrome中不适用,其它浏览器均可

到此这篇关于javascript实现用户必须勾选协议实例讲解的文章就介绍到这了,更多相关javascript实现用户必须勾选协议内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
抱歉,作为AI语言模型,我无法提供视觉设计方案,但我可以向您介绍如何在前端使用Vue.js实现一个跨页勾选的table。 1. 创建Vue实例 首先,我们需要在HTML文件中引用Vue.js文件,并创建一个Vue实例。 ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>Vue Table</title> <script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script> </head> <body> <div id="app"> <!-- table code here --> </div> <script src="app.js"></script> </body> </html> ``` app.js文件中: ```javascript new Vue({ el: '#app', data: { selectedRows: [], // 存储选择的行数 items: [], // 表格数据 currentPage: 1, // 当前页码 pageSize: 10, // 每页条数 total: 100 // 数据总条数 }, methods: { toggleSelection(row) { // 更新选择的行数 const index = this.selectedRows.indexOf(row); if (index === -1) { this.selectedRows.push(row); } else { this.selectedRows.splice(index, 1); } }, isSelected(row) { // 判断行是否已选择 return this.selectedRows.includes(row); }, onPageChange(page) { // 处理换页事件 this.currentPage = page; // 这里可以根据页码重新获取数据 }, onSelectAll() { // 选择所有行 this.selectedRows = this.items.slice(); }, onClearSelection() { // 取消选择所有行 this.selectedRows = []; } }, computed: { pages() { // 计算总页数 return Math.ceil(this.total / this.pageSize); }, slicedItems() { // 根据分页条件筛选数据 const start = (this.currentPage - 1) * this.pageSize; const end = start + this.pageSize; return this.items.slice(start, end); }, isSelectAll() { // 判断是否已选择所有行 return this.selectedRows.length === this.slicedItems.length; } } }); ``` 2. 渲染表格 在Vue实例中,我们可以使用v-for语法渲染表格数据,并绑定勾选事件。 ```html <table> <thead> <tr> <th> <input type="checkbox" v-model="isSelectAll" @change="isSelectAll ? onSelectAll() : onClearSelection()"> </th> <th>Name</th> <th>Age</th> <th>Gender</th> </tr> </thead> <tbody> <tr v-for="row in slicedItems" :key="row.id" @click="toggleSelection(row)" :class="{selected: isSelected(row)}"> <td> <input type="checkbox" :checked="isSelected(row)" @click.stop> </td> <td>{{ row.name }}</td> <td>{{ row.age }}</td> <td>{{ row.gender }}</td> </tr> </tbody> </table> ``` 在表头添加一个全选复选框,并绑定一个computed属性isSelectAll来判断是否已选择所有行,同时定义两个方法onSelectAll和onClearSelection来实现全选和取消选择。在表格中每一行的前列添加一个复选框,通过@click事件绑定toggleSelection方法实现勾选/取消勾选。isSelected方法用于判断当前行是否已被勾选,根据返回值判断是否添加selected类名以实现勾选时的高亮效果。 3. 分页 最后,我们需要实现分页功能。可以使用第三方库如Vue-Pagination实现,也可以自己实现。这里我们在Vue实例中定义currentPage和pageSize来保存当前页码和每页条数,total记录数据总条数。使用computed属性pages计算总页数。在表格底部添加分页组件,并调用onPageChange方法处理页码变化事件。 ```html <template> <div> <table> <!-- table code here --> </table> <pagination :current-page="currentPage" :total="total" :page-size="pageSize" @page-change="onPageChange"/> </div> </template> <script> export default { data() { return { selectedRows: [], // 存储选择的行数 items: [], // 表格数据 currentPage: 1, // 当前页码 pageSize: 10, // 每页条数 total: 100 // 数据总条数 }; }, methods: { // table methods here }, computed: { pages() { // 计算总页数 return Math.ceil(this.total / this.pageSize); }, slicedItems() { // 根据分页条件筛选数据 const start = (this.currentPage - 1) * this.pageSize; const end = start + this.pageSize; return this.items.slice(start, end); }, isSelectAll() { // 判断是否已选择所有行 return this.selectedRows.length === this.slicedItems.length; } }, components: { pagination } }; </script> ``` 至此,我们已经完成了一个基本的跨页勾选的表格实现,您还可以根据需求自定义样式和功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值