Javascript 如何使用TinyMCE通过AJAX传递textarea内容
我最近发现使用TinyMCE Jquery插件提交表单时出现了一个问题。当尝试提交文本字段、选择框等常规输入字段时,一切正常。但是,在文本区域使用TinyMCE无法正常工作;我必须提交两次才能保存。这个问题有解决办法吗Javascript 如何使用TinyMCE通过AJAX传递textarea内容,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我最近发现使用TinyMCE Jquery插件提交表单时出现了一个问题。当尝试提交文本字段、选择框等常规输入字段时,一切正常。但是,在文本区域使用TinyMCE无法正常工作;我必须提交两次才能保存。这个问题有解决办法吗 <script> $(function () { $('.message').removeClass('hidden'); }); $(function () { $('form').on('submit', function (e) {
<script>
$(function () {
$('.message').removeClass('hidden');
});
$(function () {
$('form').on('submit', function (e) {
//save button so we can use later
var my_button = $(this).find("button");
//give button loading state
my_button.button('loading');
e.preventDefault();
var note = $("#content").text();
$.ajax({
type: 'POST',
dataType:'html',
url: '/m/core/_processEditEntry.php',
data: $('form').serialize(),
success: function () {
//reset state
my_button.button('reset');
$(".message").fadeIn(0);
$(".message").delay(5000).fadeOut('slow');
}
});
});
});
</script>
$(函数(){
$('.message').removeClass('hidden');
});
$(函数(){
$('form')。关于('submit',函数(e){
//保存按钮,以便我们以后使用
var my_button=$(this.find(“button”);
//给出按钮加载状态
我的按钮。按钮(“加载”);
e、 预防默认值();
变量注释=$(“#内容”).text();
$.ajax({
键入:“POST”,
数据类型:'html',
url:“/m/core/_processEditEntry.php”,
数据:$('form')。序列化(),
成功:函数(){
//重置状态
我的按钮。按钮(“重置”);
$(“.message”).fadeIn(0);
$(“.message”).delay(5000).fadeOut('slow');
}
});
});
});
HTML
回答我的问题
我需要添加tinyMCE.triggerSave()代码>
$(函数(){
$('form')。关于('submit',函数(e){
//保存按钮,以便我们以后使用
var my_button=$(this.find(“button”);
//给出按钮加载状态
我的按钮。按钮(“加载”);
e、 预防默认值();
tinyMCE.triggerSave();
变量注释=$(“#内容”).text();
$.ajax({
键入:“POST”,
数据类型:'html',
url:“/m/core/_processEditEntry.php”,
数据:$('form')。序列化(),
成功:函数(){
//重置状态
我的按钮。按钮(“重置”);
$(“.message”).fadeIn(0);
$(“.message”).delay(5000).fadeOut('slow');
}
});
});
});
您应该使用$('#tinymce').tinymce().getContent()
@Dagon我应该如何实现它?
<textarea id="cotent" name="content" style="width:100%"><?php echo $entry->content; ?></textarea>
<script>
$(function () {
$('form').on('submit', function (e) {
//save button so we can use later
var my_button = $(this).find("button");
//give button loading state
my_button.button('loading');
e.preventDefault();
tinyMCE.triggerSave();
var note = $("#content").text();
$.ajax({
type: 'POST',
dataType:'html',
url: '/m/core/_processEditEntry.php',
data: $('form').serialize(),
success: function () {
//reset state
my_button.button('reset');
$(".message").fadeIn(0);
$(".message").delay(5000).fadeOut('slow');
}
});
});
});
</script>