In this sample the fields where editing is disabled grey themselves out. In my application editing is disabled, but the styling doesn't change. Where in the code does that happen? I tried using the Claro theme instead of Nihilo but that didn't do it.
Thanks!
Are you using the attribute inspector to just show a pop-up?
If you set all the isEditable values to false it should grey them all out.
{'fieldName': 'Rd_64_Venue', 'isEditable': false, 'label': 'Rd 1 Venue:'},
I have a Popup in the map InfoWindow without any editing allowed at first, and then there is an 'Edit' button the user clicks in order to edit fields. Then I clear the Popup content and use the Attribute Inspector in the map InfoWindow. Code snippets:
arc.map = { modules : { map : new Map("map", { basemap : "topo", center : [-98, 39], zoom : 4, showAttribution : false, logo : false, showInfoWindowOnClick : true, infoWindow : new Popup({ anchor : "top-right" }, domConstruct.create("div")) }) } } function inspector(layer, map, feature, dg, track, sym) { var that = this; var fEdit = feature; var infoObj = []; // Special field editing settings for arrays arrayUtils.forEach(layer.fields, function(atts) { if (atts.name.search('OBJECTID') == -1) { if (atts.name.search('Shape') == -1) { if (atts.name == 'Status') { var objField = {}; objField['fieldName'] = atts.name; objField['label'] = atts.alias; objField['isEditable'] = true; infoObj.push(objField); } else { var objField = {}; objField['fieldName'] = atts.name; objField['label'] = atts.alias; objField['isEditable'] = false; infoObj.push(objField); }; }; }; }); var layerInfosVar = this.layerInfos(layer, infoObj); var attIn = new AttributeInspector({ layerInfos : layerInfosVar }, domConstruct.create('div')); // BUG: clear -up first layer.setInfoTemplate(); map.infoWindow.clearFeatures(); map.infoWindow.setContent(attIn.domNode); return attIn; }
When you run your code does it ever hit line 32 in the debugger?
It does, yes