时间:2021-05-26
业务需求:可以根据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>参考:jQuery-Tags-Input
资源:Demo
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
jQuery有些版本中实现CheckBox全选/全不选/反选会有bug,经测试jquery-1.3.1.js–>测试通过,jquery-1.5.1.js–>测试
本文实例讲述了js与jQuery实现checkbox复选框全选/全不选的方法。分享给大家供大家参考,具体如下:先来看看JavaScript实现checkbox复
web开发中,由于checkbox比较小用户操作起来不是很方便,为了方便用户对checkbox操作我们可以让用户点击说明文字时即可实现选择/勾选checkbox
废话不多说了,直接给大家贴代码了,具体代码如下所示:jQuery实现CheckBox全选、全不选$(function(){$(':checkbox').clic
本文实例讲述了JS实现表单中checkbox对勾选中增加边框显示效果。分享给大家供大家参考。具体如下:这里用JavaScript实现checkbox复选框选中效