jquery单击隐藏的复选框
jquery click a checkbox that is hidden
我正在为一个网站制作滤色器。在我想删除可见复选框的地方(我做到了),删除标签等。只留下一个背景色为<-的div这一切都奏效了。但现在我不知道如何使这些div的点击功能,因为输入字段是隐藏的。有没有办法在jQuery中解决这个问题?
这是我的代码:
function onDataReceived(data) {
$.each(data.colorInfo, function(key, colorInfo) {
var inputElement = $("input[name^=filter][value="+colorInfo.id+"]").css("display", "none");
var labelElement = $('label[for^=filter]').remove();
var div = inputElement.parent();
div.attr('class', 'myclass_'+colorInfo.id);
div.css("background-color", colorInfo.colorCode);
div.css("width", "15px");
div.css("height", "15px");
div.css("display", "inline-block");
div.css("marginLeft", "5px");
div.css("marginBottom", "5px");
//console.log(colorInfo);
});
}
$(document).ready(function () {
var url = 'myapi.json';
$.get(url, onDataReceived);
});
以及HTML:
<div class="filter_3">
<input name="filter[]" value="152194" type="checkbox"/>
<label for="filter_152194">Rood</label>
</div>
<div class="filter_4">
<input name="filter[]" value="152196" type="checkbox"/>
<label for="filter_152196">Blauw</label>
</div>
<div class="filter_5">
<input name="filter[]" value="152198" type="checkbox"/>
<label for="filter_152198">Oranje</label>
</div>
假设单击div后会调用一个函数:
function onDataReceived(data) {
$.each(data.colorInfo, function(key, colorInfo) {
var inputElement = $("input[name^=filter] [value="+colorInfo.id+"]").css("display", "none");
var labelElement = $('label[for^=filter]').remove();
var div = inputElement.parent();
div.attr('class', 'myclass_'+colorInfo.id);
div.css("background-color", colorInfo.colorCode);
div.css("width", "15px");
div.css("height", "15px");
div.css("display", "inline-block");
div.css("marginLeft", "5px");
div.css("marginBottom", "5px");
/* Added Lines */
div.css("pointer-events", "auto"); //Just in case, but it's probably not necessary
div.css("cursor", "pointer"); //It's nice to have
div.on('click', function() { //This is a click event delgated to the div
// Whatever code is needed when div is clicked
});
//console.log(colorInfo);
});
}
$(document).ready(function () {
var url = 'myapi.json';
$.get(url, onDataReceived);
});
相关文章:
- 显示隐藏复选框
- jquery单击隐藏的复选框
- 在jsTree中隐藏复选框
- 如何从django表单库中隐藏复选框,并使用Javascript切换其显示属性
- 基于复选框隐藏/显示表格行
- 使用jQuery切换根据选中的复选框隐藏/显示表单提交按钮 - 如何设置默认关闭的提交按钮
- 如何在 Yii javascript 中使用复选框隐藏或显示文本字段
- 根据选定的复选框隐藏/显示内容
- 如何使用复选框隐藏和显示jquery数据表中的行
- 使用复选框隐藏我的数据时出现问题
- 复选框隐藏,除非选择了下拉值
- 通过复选框隐藏/显示文本区域,这些复选框具有不同部分的相同类
- 动态复选框隐藏动态输入框
- 如何使用自定义复选框隐藏网格列
- 通过复选框隐藏表格
- JQuery数组's和输入复选框+隐藏
- 使用复选框隐藏多个表单字段
- Symfony 2.3如何通过复选框隐藏/显示图像
- 使用复选框隐藏/显示基于类别的谷歌地图标记's
- 使用 JavaScript 确定复选框 + 隐藏字段组合的值