我似乎无法使用javascript进行此操作。我试图根据选中的复选框更新地图上的某些图层。 这是我的代码和我到目前为止所尝试的内容。
HTML:
public function loadDrinks(Request $request){
$place_id = $request->place_id;
$device_id = $request->device_id;
$drinks = \App\DrinksOrdered::where(['place_id' => $place_id, 'device_id' => $device_id])->get();
$resp = new \App\Http\Helpers\ServiceResponse;
$resp->Message = "Drinks loaded successfully.";
$resp->Status = true;
$resp->InnerData = $drinks;
return response()->json($resp, 200);
}
js:
<div class="option-layer">
<input type="checkbox" value="layer1" name="Administratoret">
<input type="checkbox" value="layer11" name="njesite_adm.kml">
<input type="checkbox" value="raster" name="njesite_adm.kml">
</div>
我是否走在正确的轨道上?任何帮助都值得赞赏。
答案 0 :(得分:1)
将filter_options数组添加到地图时,它只有一个图层。在尝试将filter_options数组中的图层添加到地图后添加/删除图层。您的图层实际上未添加到地图中。
首先加载所有图层:
layers : [raster, layer1, layer11] //this works for you already
然后在复选框更改事件中,处理图层可见性:
layer1.setVisible(true) or
layer1.setvisible(false)