jquery.tagsinput.js实现记录checkbox勾选的顺序
2019-09-21 17:01
2687 查看
业务需求:可以根据checkbox的先后勾选传递有顺序的值让后台接收,决定用tagsinput显示checkbox的先后勾选顺序,并实时响应checkbox的勾选状态
思路:checkbox的值存在一个数组A,新创建一个数组B,如果选中一个,B push一个值,取消一个,remove一个值,因为数组是有序的,就做到响应checkbox的勾选顺序
效果:
代码:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Tagsinput Checkbox</title> <link rel="stylesheet" type="text/css" href="jquery.tagsinput.css" > </head> <body> checkbox: <input type="checkbox" value="0" name="fruit" οnclick="radioHandle(this.value)" />Apple <input type="checkbox" value="1" name="fruit" οnclick="radioHandle(this.value)" />Banana <input type="checkbox" value="2" name="fruit" οnclick="radioHandle(this.value)" />Pear <input type="checkbox" value="3" name="fruit" οnclick="radioHandle(this.value)" />Orange <br><br> <input type="text" id="fruit-tags" name="fruit-tags" > <input type="text" id="fruitChecked"> <script src="jquery.min.js" ></script> <script src="jquery.tagsinput.js" ></script> <script type="text/javascript"> var fruitValue = new Array(); var fruitName = ['Apple','Banana','Pear','Orange']; Array.prototype.removeByValue = function(val) { for(var i=0; i<this.length; i++) { if(this[i] == val) { this.splice(i, 1); break; } } }; $('#fruit-tags').tagsInput({ interactive: false, removeWithBackspace: false, onRemoveTag: function(value){ //重点 通过值获得数组的索引 //删除 checkbox不勾选 数组remove值 显示改变 var index = fruitName.indexOf(value); $("input:checkbox[name=fruit][value="+index+"]").prop("checked",false); fruitValue.removeByValue(index); $('#fruitChecked').val(fruitValue.toString()); } }); function radioHandle(value){ // --- 选中 push-- if($("input:checkbox[name=fruit][value="+value+"]").is(':checked')){ if($('#fruitChecked').val().indexOf(value) == -1){ fruitValue.push(value); $('#fruit-tags').addTag(fruitName[parseInt(value)]); } }else{ if($('#fruitChecked').val().indexOf(value) > -1){ fruitValue.removeByValue(value); $('#fruit-tags').removeTag(fruitName[parseInt(value)]); } } $('#fruitChecked').val(fruitValue.toString()); } </script> </body> </html>
资源:Demo
以上就是本文的全部内容,希望对大家的学习有所帮助
您可能感兴趣的文章:
相关文章推荐
- jquery.tagsinput.js 实现记录checkbox勾选的顺序
- JS实现对gridview中的checkbox的选中个数记录,并在页面刷新时保持checkbox的状态 .
- 基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录
- jQuery_如何用js或jQuery实现input失焦后,为空则为红色边框,不为空则为绿色边框?
- js在repeater控件内每一行<input type="checkbox"/>实现全选,全不选,然后获取每一行的ID删除
- 利用jQuery的deferred对象实现异步按顺序加载JS文件
- jquery 动态添加、按顺序添加input文本框并且实现删除操作
- js及jQuery实现checkbox的全选、反选和全不选
- jQuery.cookie.js实现记录最近浏览过的商品功能示例
- 基于MVC+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录
- jquery.cookie.js结合asp.net实现最近浏览记录
- 下面简单使用Jquery来操作iframe的一些记录,这个使用纯JS也可以实现。
- js和jQuery实现获取id和点击checkbox全选功能
- jquery/js实现文本框根据输入内容input,textarea自适应高度
- js与jQuery实现checkbox复选框全选/全不选的方法
- html input checkbox - js,jQuery
- js,jquery获取checkbox 记录ID值
- (转)基于MVC4+EasyUI的Web开发框架经验总结(1)-利用jQuery Tags Input 插件显示选择记录
- [JS教程] input checkbox 用js实现全选/不选
- 利用jQuery的deferred对象实现异步按顺序加载JS文件