我使用 Jquery 插件 和 Tinymce 编辑器,使用 Codeigniter 将一些发布数据添加到数据库。
我的问题我无法从我使用Tinymce Editor的textarea获取所有值,但另一个字段运行良好。
这是我的Tinymce 编辑器
<script type="text/javascript">
$(document).ready(function () {
tinymce.init({
selector: "textarea",
theme: "modern",
base_url: false,
external_filemanager_path: "/filemanager/",
filemanager_title: "Responsive Filemanager",
external_plugins: {"filemanager": "<?PHP echo base_url('../filemanager/plugin.min.js') ?>"},
relative_urls: false,
plugins: [Full uption ],
toolbar1: "insertfile undo redo | bold italic | alignleft aligncenter alignright alignjustify ",
});
});
</script>
这是我的 Jquery 插件
<script>
$(document).ready(function () {
$("#do_upload").on('click', function () {
if ($("#ch_title").val() === '') {
alert("You have to input all Chineses language field");
$("#ch_title").addClass('error');
}
if ($("#kh_title").val() === '') {
alert("You have to input all Khmer language field");
$("#kh_title").addClass('error');
}
});
$("#eng_form").submit(function (e) {
e.preventDefault();
}).validate({
// ignore: "",
rules: {
eng_title: {
required: true
},
eng_dd: {
required: true
},
kh_dd: {
required: true
},
eng_up_img: {
required: true
},
},
submitHandler: function () {
$.ajax({
url: '<?PHP echo base_url('image/rupload'); ?>',
type: 'POST',
data: new FormData($('#eng_form')[0]),
contentType: false,
cache: false,
dataType: 'json',
processData: false,
beforeSend: function (xhr) {
$("#teset").modal('show');
$('<img style="width:60px; height:auto;" src="<?PHP echo base_url('assets/admin/img/ajax-loader-2.gif'); ?>"/>').appendTo("#loading_img");
}, complete: function (jqXHR, textStatus) {
if (textStatus == 'success') {
$("#loading_img").html('');
$("#teset").modal('hide');
$("#img_modal").modal('hide');
$($('#img_upload')).closest($('form')).find("input[type=text], textarea").val(" ");
window.location.href = '<?PHP echo base_url('slide/right'); ?>';
}
}, success: function (data) {
var size = data.img_pro.upload.file_size;
if (size >= 2048) {
alert("Your images size can't more than 2MB" + "Your size:" + size);
} else if (data.res === false) {
alert("Your images is not correct");
}
}
});
}
});
});
</script>
如果我使用Tinymce编辑器来处理数组变量DD和描述,结果我无法获取所有textarea值
最佳答案
您可能需要更新 <textarea>
在捕获表单数据之前使用编辑器的内容。我猜测,因此假设您在创建 FormData
时正在获取字段值对象。
如果这是真的,那么在 FormData
的某个地方构造函数将tinymce编辑器内容移动到 <textarea>
通过调用tinymce.Editor.save()。例如,如果您的 activeEditor 实例在名为 editor
的 var 中引用。然后editor.save()
将更新关联的<textarea>
元素。
之后,您可以使用 JQuery .val() 函数获取字段的值,即。 someVar = $(#fieldName).val();
显然,您需要提供适当的名称来代替 someVar
和#fieldName
.
关于javascript - 为什么我无法使用 Jquery 插件中的 FormData 从 tinymce 编辑器获取 textarea 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33185657/