I added in "esri/layers/ArcGISDynamicMapServiceLayer",
"esri/layers/ImageParameters"
function(...ArcGISDynamicMapServiceLayer, ImageParameters,...)
var layer, map, visible = [];
changed...//Use the ImageParameters to set the visible layers in the map service during ArcGISDynamicMapServiceLayer construction.
var imageParameters = new esri.layers.ImageParameters();
imageParameters.layerIds = [0];
imageParameters.layerOption = esri.layers.ImageParameters.LAYER_OPTION_SHOW;
//can also be: LAYER_OPTION_EXCLUDE, LAYER_OPTION_HIDE, LAYER_OPTION_INCLUDE
layer = esri.layers.ArcGISDynamicMapServiceLayer("http://my/MapServer", {"imageParameters":imageParameters});
map.addLayer(layer);
function updateLayerVisibility() {
var inputs = dojo.query(".list_item"), input;
//in this application layer 2 is always on.
visible = [0];
for (var i=0, il=inputs.length; i<il; i++) {
if (inputs.checked) {
visible.push(inputs.id);
}
}
//if there aren't any layers visible set the array value to = -1
if(visible.length === 0){
visible.push(-1);
}
layer.setVisibleLayers(visible);
}
[HTML]<label class="chkLabel"><input type='checkbox' class='list_item' id='0' value=0 onclick='updateLayerVisibility();'>Interior Space</label>[/HTML]