Клуб API Карт

Новый контент для кнопки

Пост в архиве.

Создал пользовательскую кнопку ToolBarToggleButton, после её нажатия хочу поменять текст в ней: "Отобразить" - "Показать". Использовал setContent, но он полностью затирает текстовое содержание кнопки.

var buttonHideTrek = new YMaps.ToolBarToggleButton({caption: "Скрыть трек"});

toolbar.add(buttonHideTrek);

    // скрытие и отображение трека
    YMaps.Events.observe(buttonHideTrek, buttonHideTrek.Events.Select, function () {
        map.removeOverlay(ml);
        buttonHideTrek.setContent("Показать трек");
    }, map);

    YMaps.Events.observe(buttonHideTrek, buttonHideTrek.Events.Deselect, function () {
        map.addOverlay(ml);
        buttonHideTrek.setContent("Скрыть трек");
    }, map);

Кроме этого, перепробовал кучу вариантов, и в документации полный ноль.. чувствую, что что-то не так пишу

3 комментария
Sergey Konstantinov
28 января 2016, 06:52
setContent({ caption: 'Показать трек' })
Вот так:
var buttonHideTrek = new YMaps.ToolBarToggleButton({caption: "Скрыть трек"});
toolbar.add(buttonHideTrek);

// скрытие и отображение трека
YMaps.Events.observe(buttonHideTrek, buttonHideTrek.Events.Select, function () {
    buttonHideTrek.setContent({ caption :"Показать трек" });
}, map);

YMaps.Events.observe(buttonHideTrek, buttonHideTrek.Events.Deselect, function () {                                                                                              
    buttonHideTrek.setContent({ caption :"Скрыть трек" });
}, map);

Документацию поправим, спасибо.
Ок, работает, большое спасибо!