我的应用程序有一个场地和区域的表格,每个区域都有许多场地。索引页面将所有场地显示为部分。
索引页面还有一个表单,其中包含每个区域的复选框和一个提交按钮,并允许用户根据所选区域过滤显示的场地。复选框使用jQuery-UI按钮小部件来获得更好的外观。
索引页还有一个城镇的.png地图图像,显示所有不同的区域,每个区域都是可点击的,并与过滤器表单中的区域复选框相对应。 map.png是包含每个区域的多边形形状的图像映射的背景。
我已设法使用javascript将地图上的区域链接到区域复选框,因此用户可以选择表单中的复选框或地图上的区域来过滤结果。
$(function() {
$('area').click(function(){
var name = $(this).data("areanum");
var $checkbox = $('#' + name);
$checkbox.attr('checked', !$checkbox.attr('checked'));
});
});
地图上的区域有一个与其相应复选框的id匹配的areanum值。
但是,如果用户单击地图上的某个区域,则在提交表单并重新加载页面之前,相应的复选框将不会被检查。
如何在地图上选择某个区域时,如何选中相应的复选框?
如果需要任何其他代码,请询问,我会发布,我不想用大量的代码来解决问题,因为我不太确定什么是重要的。
非常感谢任何帮助!
答案 0 :(得分:2)
...复选框使用jQuery-UI按钮小部件来获得更好的外观。 ...
啊哈!当以编程方式更改自定义jQuery UI复选框的复选框状态时,您需要明确告诉复选框刷新其显示状态:
$('area').click(function(){
var name = $(this).data("areanum");
var $checkbox = $('#' + name);
$checkbox.attr('checked', !$checkbox.attr('checked'));
$checkbox.button("refresh");
});
答案 1 :(得分:0)
试试这个:
$("input[type=checkbox]").prop('checked', true).uniform();