Javascript CKEditor向表单提交空内容。
几周前我开始使用CKEditor v3。在一个php项目中使用它。我一直在使用jquery(使用jquery适配器)和所有这些,同时使用$.ajax(因为在使用jquery表单时无法处理错误)提交,我认为一切都很好 因此,这里会弹出一个案例,我需要使用普通表单机制来提交ckeditor内容和表单的所有其他信息。Javascript CKEditor向表单提交空内容。,javascript,forms,ckeditor,Javascript,Forms,Ckeditor,几周前我开始使用CKEditor v3。在一个php项目中使用它。我一直在使用jquery(使用jquery适配器)和所有这些,同时使用$.ajax(因为在使用jquery表单时无法处理错误)提交,我认为一切都很好 因此,这里会弹出一个案例,我需要使用普通表单机制来提交ckeditor内容和表单的所有其他信息。 令我惊讶的是,内容是空的,所以我启动了谷歌,显然这是一个已知的问题。 我还没有看到任何东西可以让我把我的内容发布到php端。所以我想出了一个解决办法 我知道onclick总是在提交前启动
令我惊讶的是,内容是空的,所以我启动了谷歌,显然这是一个已知的问题。 我还没有看到任何东西可以让我把我的内容发布到php端。所以我想出了一个解决办法 我知道onclick总是在提交前启动,所以我写了这个
function returntoSubmit(){
myForm = document.forms[0];
myForm.elements["content"].value = $("#content").val();// note that the textarea name and id are all the same "content"
}
// html here
<input type="submit" value="Save" onclick="returntoSubmit()" />
函数returntoSubmit(){
myForm=document.forms[0];
myForm.elements[“content”].value=$(“#content”).val();//请注意,textarea名称和id都是相同的“content”
}
//这里是html
这对我来说很管用。但是真的有点不舒服,没有更好的方法来解决这个问题吗
谢谢这能帮上忙吗
CKEDITOR.instances[content].getData()
希望这有帮助
CKEDITOR.instances[content].getData()
我也遇到了这个问题。。。更新所有文本区域的最佳方式似乎是:
for(var i in CKEDITOR.instances) CKEDITOR.instances[i].updateElement();
也遇到了这个问题。。。更新所有文本区域的最佳方式似乎是:
for(var i in CKEDITOR.instances) CKEDITOR.instances[i].updateElement();
事实上,我已经添加了我自己的扭曲,效果很好,因为我今天遇到了同样的问题 我使用了您的函数调用,但我为我的textarea提供了ckeditor的ID:
function returnToSubmit() {
$('#ckeditor').val(CKEDITOR.instances['ckeditor'].getData();
}
实际上,我已经添加了我自己的扭曲,效果很好,因为我今天遇到了同样的问题 我使用了您的函数调用,但我为我的textarea提供了ckeditor的ID:
function returnToSubmit() {
$('#ckeditor').val(CKEDITOR.instances['ckeditor'].getData();
}
我正在运行一个带有一些讨厌的遗留代码的大型应用程序,需要一些尽可能非侵入性地在整个应用程序中工作的东西。在我的情况下,在每个页面上单独监听提交是不可行的,即使在我监听的时候,我偶尔也会遇到比赛条件,在点击事件代码有机会完成之前,提交仍然发生。当在全局范围内加载页面后运行时,以下内容似乎对我起到了作用:
for(var i in CKEDITOR.instances) {
CKEDITOR.instances[i].on('blur', function() { this.updateElement(); });
}
我正在运行一个带有一些讨厌的遗留代码的大型应用程序,需要一些尽可能非侵入性地在整个应用程序中工作的东西。在我的情况下,在每个页面上单独监听提交是不可行的,即使在我监听的时候,我偶尔也会遇到比赛条件,在点击事件代码有机会完成之前,提交仍然发生。当在全局范围内加载页面后运行时,以下内容似乎对我起到了作用:
for(var i in CKEDITOR.instances) {
CKEDITOR.instances[i].on('blur', function() { this.updateElement(); });
}
我在针对所有表单的jquery就绪事件中使用了此选项:
$('form').on('submit',function(){
for(var i in CKEDITOR.instances) {
CKEDITOR.instances[i].updateElement();
}
});
稍后,我添加了另一个特定的表单提交事件处理程序,以对每个表单执行实际的自定义提交逻辑。我在所有表单的jquery就绪事件中使用了该处理程序:
$('form').on('submit',function(){
for(var i in CKEDITOR.instances) {
CKEDITOR.instances[i].updateElement();
}
});
稍后,我添加了另一个特定的表单提交事件处理程序,为每个表单执行实际的自定义提交逻辑。感谢您的回复,我到底将其称为何处?在我的returntoSubmit()javascript方法中?我刚刚意识到在firebug CKEDITOR.instances中[content]是未定义的。使用jQueryAdapter的等价物是什么?谢谢你的回答,我到底把它叫做什么?在我的returntoSubmit()javascript方法中?我刚刚意识到在firebug CKEDITOR.instances中[content]是未定义的。使用jquery适配器的等价物是什么?谢谢!Coldfusion需要2个标志。谢谢!Coldfusion需要2个符号。