我需要用复选框实现多选框。但问题是应该保留按住shift或ctrl按住并选择一个值块的功能。
我已经实现了添加复选框,但是通过按住ctrlorshift键来选择值不起作用。
HTML:
<div class="multSelect">
<label><input type="checkbox" name="hotels[]" value="1">Value 1</label>
<label><input type="checkbox" name="hotels[]" value="2">Value 2</label>
<label><input type="checkbox" name="hotels[]" value="3">Value 3</label>
<label><input type="checkbox" name="hotels[]" value="4">Value 4</label>
</div>
Javascript
$(function() {
multiSelectWithCheckbox();
});
function multiSelectWithCheckbox() {
jQuery('.multSelect').each(function(){
var checkboxes = jQuery(this).find("input:checkbox");
checkboxes.each(function(){
if(jQuery(this).attr('checked'))
jQuery(this).parent().addClass('selectColor');
jQuery(this).click(function(){
if(jQuery(this).attr('checked'))
jQuery(this).parent().addClass('selectColor');
else
jQuery(this).parent().removeClass('selectColor');
});
});
});
}
CSS
.multSelect {
width:22em;
height:30em;
border:solid 1px #c0c0c0;
overflow:auto;
}
.multSelect label{
font-weight:normal;
font-size:11px;
}
.selectColor {
background-color: #3399FF;
}
它工作正常。但我也需要ctrl和shift关键功能。请给出一些想法来实现这一点。
提前致谢。