プロジェクトの開発に MVC4 と HTML5 を使用しています。select タグとオプションを宣言しました。各オプションには独自の値があります。オプションを選択すると、その値がアラートに表示されます。
<select name="select" onchange="drawOption(this)">
<option value="">--- Cizgi Tipi Seçiniz ---</option>
<option value="">--- Basit Semboller ---</option>
<option value="new esri.symbol.SimpleMarkerSymbol();">Default</option>
<option value="new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID,new dojo.Color([210, 105, 30, 0.5]), 8), new dojo.Color([210, 105, 30, 0.9]))" >Square</option>
</select>
JavaScript では、この値を使用してオブジェクトを作成し、var 変数に代入したいと考えています。関連する関数 (drawOption 関数ではありません。いくつかの関数の後に addGraphic 関数がトリガーされます):
function addGraphic(pt) {
var idx = element.selectedIndex;
alert(element.options[idx].value);
var symbol = element.options[idx].value;
// var symbol = new esri.symbol.SimpleMarkerSymbol(esri.symbol.SimpleMarkerSymbol.STYLE_SQUARE, 10, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([210, 105, 30, 0.5]), 8),
//new dojo.Color([210, 105, 30, 0.9]));
graphic = new esri.Graphic(pt, symbol);
map.graphics.add(graphic);
}
アラートでは、値を確認できます。ただし、シンボル変数には代入しません。私はそれを文字列として割り当てるので、新しいオブジェクトを作成できないと思います。
この問題を解決するには?