我已经定义了如下所示的复选框:
<label><input type="checkbox" id="Business Development box" onclick="boxclick(this,'skills','Business Development')" /> Business Development </label>
<label><input type="checkbox" id="Capacity Building box" onclick="boxclick(this,'skills','Capacity Building')" /> Capacity Building </label>
<label><input type="checkbox" id="Communications and Marketing box" onclick="boxclick(this,'skills','Communications and Marketing')" /> Communications and Marketing</label>
<label><input type="checkbox" id="Consulting box" onclick="boxclick(this,'skills','Documentary/Media')" /> Consulting</label>
<label><input type="checkbox" id="Documentary/Media box" onclick="boxclick(this,'skills','Documentary/Media')" /> Documentary/Media</label>
<label><input type="checkbox" id="Economic Development box" onclick="boxclick(this,'skills','Economic Development')" /> Economic Development</label>
<label><input type="checkbox" id="Entrepreneurship box" onclick="boxclick(this,'skills','Entrepreneurship')" /> Entrepreneurship</label>
<label><input type="checkbox" id="Event Planning box" onclick="boxclick(this,'skills','Event Planning')" /> Event Planning</label>
<label><input type="checkbox" id="Financial Management box" onclick="boxclick(this,'skills','Financial Management')" /> Financial Management</label>
复选框触发boxclick,它接收“类别”(技能)和类型(例如咨询)
boxclick看起来像这样:
function boxclick(box,category,type) {
if (box.checked) {
show(category, type);
} else {
hide(category, type);
}
}
boxclick
触发show
,看起来像这样
function show(category, type) {
for (var i=0; i<gmarkers.length; i++) {
if (gmarkers[i][category].toUpperCase().indexOf(type.toUpperCase()) !== -1) {
gmarkers[i].setVisible(true);
}
}
// == check the checkbox ==
document.getElementById(type+" box").checked = true;
}
gmarkers
包含地图中的所有标记。 gmarkers[i][category]
将包含个人拥有的所有技能,indexOf会检查该文本数组中是否包含'type'(例如,Consulting)。
我在开始时自动将所有标记设置为不可见(我无法想到另一种方便地过滤事物的方法),并且在每个复选框之后,所有具有该技能的学生都会出现。
问题 - 如果我点击两个复选框,UNION不会显示所有标记的INTERSECTION。如何修改代码才能显示INTERSECTION?我的javascript经验非常少,所以我很难解决这个问题。
可在此处找到临时运行示例:http://dreaminginswahili.com/admin/mapv4.html。如果我犯了任何其他新手的错误,请随时纠正我。
此外,这是一个动画的GIF动画:http://i.imgur.com/XdJTfDx.gif
干杯!