Intereting Posts
Изменение размера отображаемого изображения на экране «Редактировать сообщение» вставка сообщения из файла extern php, но опубликованный контент не отображается на сайте wp Как показать товар SKU на странице продукта Обфускация адресов электронной почты в полях формы Как я могу разрешить пользователям регистрироваться, но не позволять им получать доступ к бэкэнду WordPress? Multisite – создание плагина для скрытия деактивированных сайтов с обзора сайтов Запрос, выводящий URL-адрес YouTube, а не встроенное видео Отключить разбиение на страницы в столбце Как разместить номера страниц со следующим / предыдущим в списке сообщений / категорий? Несколько веб-сайтов, которые используют некоторые типы контента, а не другие. Страница защищенной паролем + Отображение другой страницы, если не проверено подлинности / авторизировано Контейнер Виджета? Крюк после создания сообщения и извлечения информации из этого сообщения сразу Уточнить / Фильтровать результаты поиска по категориям Фильтрация содержимого пользовательского типа сообщения в определенной петле

JQuery автосохранение текстовой области после ввода

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

Во время моих поисков я нашел несколько разных ресурсов, однако ни один из них не работал для меня с моим существующим кодом. Или я просто не понимаю, как объединить его с моим кодом. Я пробовал .keyup , .keypress , .ready и другие в моем поиске.

У меня был один, работающий с событием .on , но после внедрения он создал TON ошибок на моем сайте. – И теперь я не могу найти этот фрагмент кода снова.

Любая помощь очень ценится!

Текущий код:

 jQuery(function ($) { $(".save").click(function (e) { var mid=$(this).attr('data'); var tid='#'+mid; $(tid).jqte({"status" : false}); var content = $(tid).html(); $(tid).jqte({"status" : true}); $.ajax({ dataType:'JSON', url: contentedit.ajaxurl, type: 'POST', data: { action:"contentedit_ajax", content: content, mid:mid }, }); }); 

Часть кода PHP (с сохранением момента нажатия кнопки)

 <div class='abhi_content'><div id='".$putid."' class='abhi_editable' contentEditable='true'>".$edit[0]['editedcontent']."</div><button style='display: none;' id='".$putid."_save' class='save' data='".$putid."'>Save</button> 

Не уверен, что такое ваш идентификатор. Предположим, что ID в качестве example Вот код

 jQuery(function($) { $('#example').on('keyup', function() { if(autosave_timer) { clearTimeout(autosave_timer); } autosave_timer = setTimeout(save_by_ajax, 3000); // after 3 second of keyup save_by_ajax function will execute }); function save_by_ajax(){ var mid=$(this).attr('data'); var tid='#'+mid; $(tid).jqte({"status" : false}); var content = $(tid).html(); $(tid).jqte({"status" : true}); $.ajax({ dataType:'JSON', url: contentedit.ajaxurl, type: 'POST', data: { action:"contentedit_ajax", content: content, mid:mid }, }); } }); 

ваш $putid не будет напечатан, поскольку он не находится внутри php-тегов. Так что либо дайте ID вручную, либо напечатайте в php правильно.

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