Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 23.10.2015, 06:48
Интересующийся
Отправить личное сообщение для rusik Посмотреть профиль Найти все сообщения от rusik
 
Регистрация: 08.01.2013
Сообщений: 11

не могу программно изменить значение textarea в онлайн редакторе
Здравствуйте!

Нашел онлайн редактор http://codemirror.net/
Внешне выглядит неплохо, но вот проблема:
не могу программно (через javascript) изменить значение textarea!

вот пример:
http://partnerr.ru/_xq/xq.html

Нажимаю на кнопку "Изменить textarea id="code"
и ничего не происходит

посмотрел на элементы (см.прикрепленный файл)
а там textarea является скрытым элементом и хотя он программно меняется, но на внешний вид это никак не влияет.

Что делать?

А может посоветуете как самому в поле textarea сделать подсветку элементов?

Заранее спасибо!
Изображения:
Тип файла: jpg XQ.jpg (18.7 Кб, 3 просмотров)
Ответить с цитированием
  #2 (permalink)  
Старый 23.10.2015, 06:58
Интересующийся
Отправить личное сообщение для rusik Посмотреть профиль Найти все сообщения от rusik
 
Регистрация: 08.01.2013
Сообщений: 11

За формирования внешнего вида в http://codemirror.net/
отвечает вот этот код

<script> 
      var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
        lineNumbers: true,
        matchBrackets: true,
        theme: "xq-dark"
      });
    </script>


когда я назначаю новое значение textarea, я попробовал сделать так:

function change_value(val) {

    var param3d = document.getElementById("code");
    if (param3d) {
        param3d.value = val;


        var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
            lineNumbers: true,
            matchBrackets: true,
            theme: "xq-dark"
        });



        alert("param3d.value = " + param3d.value);

    }

}


и вот что получилось:
http://partnerr.ru/_xq_2/xq.html

все равно - не то.
я понимаю, что надо на сервере страницу формировать, тогда будет работать, а без этого никак? Есть ли какое-то решение или другой онлайн редактор, чтобы можно было работать только с javascript, без сервера?

А самому онлайн редактор тяжело сделать? У кого-нибудь есть опыт? Или там все равно будет та же проблема?

Последний раз редактировалось rusik, 23.10.2015 в 07:00.
Ответить с цитированием
  #3 (permalink)  
Старый 23.10.2015, 07:10
Интересующийся
Отправить личное сообщение для rusik Посмотреть профиль Найти все сообщения от rusik
 
Регистрация: 08.01.2013
Сообщений: 11

и еще непонятно
вот этот красивый "textarea", на темном фоне с номерами строк итд
это на самом деле большой набор дивов:
<div class="CodeMirror-scroll" tabindex="-1"> итд

Теперь, например, пользователь его отредактировал и теперь я хочу этот текст отправить куда-то себе (в моем случае хотел делать через ajax) или где-то сохранить и как мне его сохранить в целом виде? Собирать кусками по всем дивам? Это вообще не вариант.
Ответить с цитированием
  #4 (permalink)  
Старый 23.10.2015, 08:16
Интересующийся
Отправить личное сообщение для rusik Посмотреть профиль Найти все сообщения от rusik
 
Регистрация: 08.01.2013
Сообщений: 11

вот так попробовал

var textArea = document.getElementById('code');
        var editor = CodeMirror.fromTextArea(textArea);
        editor.getDoc().setValue('var msg = "Hi";');


тоже не работает!
Ответить с цитированием
  #5 (permalink)  
Старый 23.10.2015, 11:08
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Сообщение от rusik
и еще непонятно
вот этот красивый "textarea", на темном фоне с номерами строк итд
это на самом деле большой набор дивов:

Визуальные html-редакторы онлайн редакторы работают за счет этого, а изменения в нем переписываются в textarea.
Ответить с цитированием
  #6 (permalink)  
Старый 24.10.2015, 13:19
Интересующийся
Отправить личное сообщение для rusik Посмотреть профиль Найти все сообщения от rusik
 
Регистрация: 08.01.2013
Сообщений: 11

и что делать?
Ответить с цитированием
  #7 (permalink)  
Старый 24.10.2015, 16:01
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

Изменять там, где происходит ввод, то есть в div контейнере.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как изменить цвет текста в textarea Joshka Общие вопросы Javascript 4 04.05.2011 16:09
Не могу получить значение атрибута DenQ jQuery 9 06.02.2011 14:33
Textarea после ajax не могу обратится mikeles Общие вопросы Javascript 0 12.01.2011 23:02
Не могу записать значение в переменную!!! di@mond Элементы интерфейса 3 30.06.2009 23:05
Скрипт калькулятора (не могу добавить еще одно значение) Jee_Day Я не знаю javascript 2 22.05.2009 13:19