我在javascript中有一个图层和地图对象,我正在使用knockoutjs。
var layer1 = new Layer("http://layeraddress1",{
"id":"layer1",
"visible":ko.observable(true)
});
var layer2 = new Layer("http://layeraddress2",{
"id":"layer2",
"visible":ko.observable(true)
});
var layersViewModel = {
layers: [
{"layer": layer1, },
{"layer": layer2, }
]
}
ko.applyBindings(layersViewModel, document.getElementById("layersContainer"))
我正在绑定图层UI。我在 layersViewModel 中使用了ko.observable()
。
<div id="layersContainer">
<ul data-bind="foreach: layers">
<li>
<input type="checkbox" data-bind="checked: layer.visible"/>
<span data-bind="text: layer.id"></span>
</li>
</ul>
</div>
当我运行代码时,选中复选框。但是当我取消选中该复选框时,它不会影响图层可见性1。 我想通过复选框选中更改layer1和layer2 visibiliity。
我很快就告诉你,我在这里准备了主要的jsFiddle代码。