ол.взаимодействие.Draw: написать уникальный текст для каждого объекта, нарисованного
Я изменил "пример рисования объектов" на OL 3.6.0 и хочу, чтобы пользователь мог добавлять свои собственные аннотации, когда он рисует точки, полигоны и т. д. по вводу-форма (текст).
Я позволяю jquery прослушать фактическое содержимое в форме ввода и вернуть это значение в draw.взаимодействие.
Эта часть работает.
Но когда входной текст изменяется, аннотации на каждом отдельном объекте изменяются на это новое значение - не то поведение, которое я хочу. Аннотации должны сохранять свои ценности.var inputvalue = 'default description';
...
draw.on('drawend', function (evt) {
console.log('input:' + inputvalue)
var oldname = evt.feature.get(name);
evt.feature.set(name, inputvalue);
var newname = evt.feature.get(name);
inputvalue = newname;
vector.setStyle(personalmarker(inputvalue));
return inputvalue;
});
И важная часть в функции стиля
function personalmarker(text) {
...
var higlighttext = new ol.style.Text({
text: text,
});
return new ol.style.Style({
text: higlighttext,
fill: fill,
stroke: stroke,
image: image
});
Демо: http://jsfiddle.net/wx7p40dc/2/
Итак, я предполагаю, что мне нужно справиться с некоторым идентификатором функции? Или проблема-это событие-ничья?