Получить текст TinyMCE для jQuery.serialize()

Проблема отправки данных TinyMCE через jQuery.serialize()

Если Вы читаете эту статью, то скорее всего Вы собирались отправить форму с активным редактором TinyMCE через AJAX и обнаружили, что значение «textarea» не передаётся обработчику.

Не буду углубляться в подробности, просто предложу кусочек кода, который работает)
$('.btn-submit').on('click', function() { // событие нажатия кнопки отправки формы (не submit!!!)
        if (tinymce.activeEditor === null) { // выход, если нет текущего активного редактора
            return;
        }//
        var text = encodeURI(tinyMCE.activeEditor.getContent()); // получение значения ТЕКСТ текущего открытого редактора
        tinymce.activeEditor = null; // сброс указателя на текущий активный редактор (чтоб не было багов с focus())        
        var fdata = $('form').serialize() + '&text=' + text; // дополнение данных формы данными редактора
        $.post("адрес серверного скрипта", fdata, function(rdata) {
            // обработчик ответа
            }
        });
    });

Итак, из скрипта видно, что для получения значения активного редактора TinyMCE нужно выполнить метод getContent();
var text = encodeURI(tinyMCE.activeEditor.getContent());

JQuery - очистка формы после перезагрузки страницы, отправки формы.

Я думаю, что все сталкивались с тем, что после перезагрузки страницы или отправки формы все элементы формы сохраняют свои значения. Например, в теге сохраняется введенное нами значение, значение не сбрасываются в пустое значение, или значение по умолчанию, а остается тем, которое мы выбрали до перезагрузки страницы или отправки формы.

В принципе в большинстве случаев это очень даже хорошо, но что делать, если нам нужно чтобы после обновления страницы элементы формы не сохраняли значения заданные пользователем? Вам отвечу, ничего особенного всего лишь дописать одну строчку в код:
$("#id_form").trigger('reset');//id_form - ID вашей формы
  • 0
  • 16 апреля 2013, 21:52
  • Maugli

Разрешить или запретить элементы на JQeury.

Периодически возникает задача разрешить или запретить использование, какого либо элемента формы. В принципы в решении проблемы как всегда ничего сложного:

$("#element_id").attr("disabled","disabled"); //задаем атрибут disabled
$("#element_id").removeAttr("disabled"); //удалем атрибут disabled

Спасибо за внимание, был рад быть кому-нибудь полезным.

Скрыть все элементы кроме указанных JQuery

Как правильно подобрать селектор для скрытия всех элементов кроме элементов с определённым ID?
Имеем блок на страничке с набором элементов у которых заданы, либо не заданы ID.
Например:

<div class="test">
    <div id="test1">test1</div>
    <div id="test2">test2</div>
    <div id="test3">test3</div>
    <div>test no ID</div>
</div>

Нам нужно скрыть все дочерние элементы блока с классом «test», кроме элементов с ID = [test2, test3]. Для выполнения этой задачи, будем использовать возможности удобного JavaScript фреймворка jQuery.


Читать дальше

Выбираем все отмеченные checkbox в форме.

Недавно я писал о том, как проверить состояние checkbox в форме, но хорошо когда элемент в форме у нас один, либо мы знаем его идентификатор, а что делать, если нам нужно проверить несколько элементов формы? Как всегда ничего сложного:
$( ':checkbox:checked' ).each(function(){
    alert(this.value);
});

Проверка состояний radio и checkbox

Постоянно при проверке состояния checkbox'ов и radio button’ов, лезут в голову какие-то странные идеи, хотя JQuery предоставляет простое до безобразия решение проблемы:

$('#radio').prop('checked'); //Проверяем radio buttons
$('#checkbox').prop('checked'); //Проверяем checkbox

Спасибо за внимание, и желаю всем читателям поменьше придумывать велосипед.

jQuery очистка памяти - совет №1

Приветствую всех читателей!
Этой темой я начну сборник небольших советов по оптимизации памяти при использовании javascript библиотеки jQuery.

jQuery очистка памяти — совет первый


Так как моя веб студия в своих разработках использует популярный и на мой взгляд, очень удобный фреймворк jQuery, у нас уже выработались некоторые правила, для ускорения его работ и экономии памяти.

Не секрет, что jQuery достаточно прожорлив и при постоянных поисках потребляет огромное количество памяти и процессорных ресурсов. Впрочем, как и любой другой фреймворк, кто бы и что не говорил).

И при работе с ним вопрос очистки памяти далеко не последний! Особенно, если вы работаете с массивами элементов и используйте много выборок.

Итак — совет первый. Это наиболее, на мой взгляд, эффективное средство для ускорение работы и конечно, уменьшение потребляемой памяти jQuery.

Никогда не производите лишний поиск / выборку элементов по одинаковым селекторам!
Простой пример (первое, что пришло в голову).


Примеры с описанием под катом...

Выбираем radio button

Работал над интерфейсом для базы заказов, и подумалось, а почему бы не использовать для изменения статуса заказа диалоговое окно от JQuery UI с набором радио кнопок. Сказано, сделано, диалоговое окно готово, только если уж делать, так делать до победного конца не останавливаясь не перед какими трудностями, а это значит, что нужно все-таки отметить кнопку с текущим состоянием заказа. В принципе поиск ответа на вопрос «а как?», занял не так уж и много времени.


Читать дальше

Если видео с YouTube налазит на диалог jQuery UI

Что делать, если видео с YouTube налазит на диалог jQuery UI?
Решение простое.
В конце ссылки, в блоке вставки, нужно добавить ?wmode=transparent или &wmode=transparent если уже есть другие параметры.