Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как обхитрить tiny_mce? (https://javascript.ru/forum/misc/21677-kak-obkhitrit-tiny_mce.html)

nematod 20.09.2011 01:09

Как обхитрить tiny_mce?
 
:victory:
Подскажите, может кто сталкивался с такой задачей.
Отправляю данные из формы обычного поля <textarea>
при помощи jquery и ajax. Всё работае в красоте.
Но! Когда подключаю tiny_mce к <textarea>, отправляет
пустое значение этого поля, как буд-то там ничего
не написано.

Прилагаю форму и скрипт:
<form>
	<textarea id='elm' name='text' cols='50' rows='4'></textarea>
	<input name="message" type="button" value="Отправить" id='but' />
</form>


$.ajax({
var elm = $("#elm").val();
var id = <? echo $id;?>;

	type: "POST",
	data: "text="+elm+"&id="+id,
	url: "blocks/send_mes.php",
	dataType: "text",
	success: function(data){
	// тут всякая хрень	
	}
});


Выслушаю любые предложения)))

B@rmaley.e><e 20.09.2011 01:36

Цитата:

Сообщение от nematod
elm

И откуда берётся содержимое этой переменной?

nematod 20.09.2011 01:40

Я подправил код, теперь видно откуда она берётся :)

B@rmaley.e><e 20.09.2011 01:43

Консоль ошибок.

nematod 20.09.2011 01:51

[20.09.2011 1:48:27] JavaScript - http://localhost/diary/cor.php?id=58
Event thread: keypress
Uncaught exception: ReferenceError: Undefined variable: ctrlEnter
Error thrown at unknown location in <anonymous function>(event):
/* no source available */
[20.09.2011 1:48:53] Виджеты

Widget loading warning: <id> element not fully defined.

nematod 20.09.2011 02:07

Нашёл решение:
var elm = tinyMCE.get('elm').getContent();

nematod 20.09.2011 11:48

Выкладываю полный код, может кому пригодится:
function mes(){
	var elm = tinyMCE.get('elm').getContent();
	var id = <? echo $id;?>;
	
	$.ajax({
		type: "POST",
		data: "text="+elm+"&id="+id,
		url: "blocks/send_mes.php",
		dataType: "text",
		success: function(data){
			tinyMCE.get('elm').setContent('');
		}
	});
}
$(document).ready(function(){
	$("#but").click(mes);
});


Этот скрипт, в добавок ко всему, очищает поле <textarea>


Часовой пояс GMT +3, время: 14:15.