插入数据库时 CKEDITOR 值为 NULL
CKEDITOR value NULL when inserting to db
抱歉我的英语不好,
我不想使用 CKEDITOR 将数据插入数据库并 ajax 提交,我有代码
$('#add').submit(function(e) {
var fd = new FormData(this);
e.preventDefault();
// CKEDITOR.instances.isiForm.updateElement();
for ( instance in CKEDITOR.instances ) {
CKEDITOR.instances.isiForm.updateElement();
}
$.ajax({
type: "POST",
url: "blog_add",
data: fd,
cache: false,
contentType: false,
processData: false,
success: function(result){
if(result=='1'){
table.ajax.reload(null,false);
$('#add').modal('hide');
// success result
} else {
// failed result
}
}
});
});
<form class="modal fade" id="add" enctype="multipart/form-data">
<div class="form-group">
<label>Isi Post</label>
<textarea id="isiForm" name="isiForm" cols="5" class="form-control rsf"></textarea>
</div>
</form>
我试过使用 CKEDITOR.instances.isiForm.updateElement();但它不起作用,该值始终为 NULL,那么我如何使用 ajax 插入到数据库中?我尝试了很多线程,但没有一个成功
您在 ckeditor 更新文本区域之前获取 FormData。只需切换它,以便在获取 FormData 之前更新 CKEDITOR 元素。
EG(未测试)
$('#add').submit(function(e) {
e.preventDefault();
//first update the form values
for ( instance in CKEDITOR.instances ) {
CKEDITOR.instances.isiForm.updateElement();
}
//then get the form data
var fd = new FormData(this);
//post via ajax
$.ajax({
type: "POST",
url: "blog_add",
data: fd,
cache: false,
contentType: false,
processData: false,
success: function(result){
if(result=='1'){
table.ajax.reload(null,false);
$('#add').modal('hide');
// success result
} else {
// failed result
}
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form class="modal fade" id="add" enctype="multipart/form-data">
<div class="form-group">
<label>Isi Post</label>
<textarea id="isiForm" name="isiForm" cols="5" class="form-control rsf"></textarea>
</div>
</form>
抱歉我的英语不好, 我不想使用 CKEDITOR 将数据插入数据库并 ajax 提交,我有代码
$('#add').submit(function(e) {
var fd = new FormData(this);
e.preventDefault();
// CKEDITOR.instances.isiForm.updateElement();
for ( instance in CKEDITOR.instances ) {
CKEDITOR.instances.isiForm.updateElement();
}
$.ajax({
type: "POST",
url: "blog_add",
data: fd,
cache: false,
contentType: false,
processData: false,
success: function(result){
if(result=='1'){
table.ajax.reload(null,false);
$('#add').modal('hide');
// success result
} else {
// failed result
}
}
});
});
<form class="modal fade" id="add" enctype="multipart/form-data">
<div class="form-group">
<label>Isi Post</label>
<textarea id="isiForm" name="isiForm" cols="5" class="form-control rsf"></textarea>
</div>
</form>
我试过使用 CKEDITOR.instances.isiForm.updateElement();但它不起作用,该值始终为 NULL,那么我如何使用 ajax 插入到数据库中?我尝试了很多线程,但没有一个成功
您在 ckeditor 更新文本区域之前获取 FormData。只需切换它,以便在获取 FormData 之前更新 CKEDITOR 元素。
EG(未测试)
$('#add').submit(function(e) {
e.preventDefault();
//first update the form values
for ( instance in CKEDITOR.instances ) {
CKEDITOR.instances.isiForm.updateElement();
}
//then get the form data
var fd = new FormData(this);
//post via ajax
$.ajax({
type: "POST",
url: "blog_add",
data: fd,
cache: false,
contentType: false,
processData: false,
success: function(result){
if(result=='1'){
table.ajax.reload(null,false);
$('#add').modal('hide');
// success result
} else {
// failed result
}
}
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<form class="modal fade" id="add" enctype="multipart/form-data">
<div class="form-group">
<label>Isi Post</label>
<textarea id="isiForm" name="isiForm" cols="5" class="form-control rsf"></textarea>
</div>
</form>