Maison > Article > interface Web > CSS多选框样式问题!_html/css_WEB-ITnose
点击增加/取消选中样式
获取选中的项拼接起来发送到后台,格式自定义
表面做成一个div的样子,其实隐藏一个checkbox,点div时改变样式,同时改变checkbox的值为选中状态。
下面给出一个例子:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title><script src="jquery-1.8.3.min.js"></script><style> .chk{height:22px; background:#f6f6f6;float:left; margin-left:5px; line-height:22px; vertical-align:middle;overflow:hidden; text-align:center;padding:0px 10px 0px 10px;border:1px solid #C99;font-size:12px;cursor:pointer} .act{color:#F96;background:#fff;} .chk input{ visibility:hidden; margin-left:-12px;}</style></head><body><form id="form1" name="form1" method="post" action=""> <div class="chk"><input type="checkbox" name="checkbox" value="0"/>西安</div> <div class="chk"><input type="checkbox" name="checkbox" value="1"/>桂林</div> <div class="chk"><input name="checkbox" type="checkbox" value="2"/>北京</div></form></body></html><script>$(function(){ $(".chk").click(function(){ if($(this).find("input[name='checkbox']").attr("checked")!="checked"){ $(this).addClass("act"); $(this).find("input[name='checkbox']").attr("checked","checked"); }else{ $(this).removeClass("act"); $(this).find("input[name='checkbox']").removeAttr("checked"); } }) })</script>