0

我需要通过数组进行此循环的帮助。现在我有 3 个下拉菜单。我试图遍历我的数组,并说如果下拉菜单中的值与数组中的值匹配,然后运行一个函数(在我的地图上绘制标记)。这一切都有效。

除了,所有 3 个下拉菜单当前都必须匹配一个值,我怎么能说如果一个值匹配,其余的是 null 绘制所有这些位置?那有意义吗?我需要考虑 1 个或 2 个甚至 3 个未选择的下拉菜单。如果您需要查看更多代码,请告诉我。

for (var i = 0; i <mymarkers.length; i++) {
    if (mymarkers[i].type==type&&mymarkers[i].day==day&&mymarkers[i].time==time){
        mymarkers[i].setMap(MYMAP.map);
    }else{
        mymarkers[i].setMap(null);
    }
}

这可能不是具体的地图问题,而是与我完成位置地图有关的问题。这是一个链接: http: //mycwebdesign.com/meetings.php。如果您选择“MA”、“Friday”和“Late”,您将看到它有效。

4

1 回答 1

0

对于具有属性的任何标记,您想要的是其属性与所选属性匹配(true将其放在地图上)或所选属性为--,因此测试也是true

if ((mymarkers[i].type==type || type=='--') &&
    (mymarkers[i].day==day   || day =='--') &&
    (mymarkers[i].time==time || time=='--')) {

如果type=='--'那么它无关紧要mymarkers[i].type:该测试将是true.

您可能需要将上面的三行代码全部放在一行上。拆分后更容易看到这里发生了什么。

于 2012-05-14T15:10:32.140 回答