php – CKEDITOR – 在Laravel 5中使用AJAX更新/创建产品失败
发布时间:2020-12-14 19:39:07 所属栏目:大数据 来源:网络整理
导读:我想使用 AJAX将用ckeditor textarea字段写的html内容存储在名为products的数据库表中. 成功插入和/或更新所有内容,留下产品说明. product_edit.blade.php {!! Form::open(['files' = 'true','autocomplete' = 'off','name' = 'formEditProductGeneralInfo',
我想使用
AJAX将用ckeditor textarea字段写的html内容存储在名为products的数据库表中.
成功插入和/或更新所有内容,留下产品说明. product_edit.blade.php {!! Form::open(['files' => 'true','autocomplete' => 'off','name' => 'formEditProductGeneralInfo','id' => 'formEditProductGeneralInfo']) !!} <div class="form-group"> {!! Form::label('code','Code:') !!} {!! Form::text('code',$product->code,['class' => 'form-control input-sm']) !!} </div> <div class="form-group"> {!! Form::label('name','Name:') !!} {!! Form::text('name',$product->name,['class' => 'form-control input-sm']) !!} </div> <div class="form-group"> {!! Form::label('description','Product Description:') !!} {!! Form::textarea('description',$product->description,['class' => 'form-control input-sm ckeditor','rows' => 3,'id' => 'prdDescription']) !!} </div> <div class="form-group"> {!! Form::label('price','Price:') !!} {!! Form::text('price',$product->price,['class' => 'form-control input-sm']) !!} </div> <div class="form-group"> {!! Form::label('image_file','Image:') !!} {!! Form::file('image_file',['id' => 'image_file','class' => 'form-control input-sm']) !!} </div> <div class="form-group"> {!! Form::submit( 'Update',['class' => 'btn btn-primary btn-block','id' => 'btnEditProductGeneral'] ) !!} </div> {!! Form::close() !!} 阿贾克斯 $('form[name="formEditProductGeneralInfo"]').submit(function(e) { var inputData = new FormData($(this)[0]); var message = CKEDITOR.instances.prdDescription.getData(); console.log(message); console.log(inputData); $.ajax({ url: '{{ url(' / admin / products / update / general ',$product->id) }}',type: 'POST',data: inputData,async: true,success: function(m) { if (m.status === 'success') { toastr.success(m.msg,'Successs!'); } else { toastr.error(m.msg,msg.status); } },error: function(data) { if (data.status === 422) { var errors = data.responseJSON; var errorsHtml = '<div class="alert alert-danger"><ul>'; errorsHtml += '<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>'; $.each(errors,function(key,value) { errorsHtml += '<li>' + value[0] + '</li>'; }); errorsHtml += '</ul></div>'; $('.errors').html(errorsHtml); } },cache: false,contentType: false,processData: false }); e.preventDefault(); return false; }); 我怎么想在数据库中保存描述的html内容? 任何帮助都非常感谢.谢谢. 解决方法
我已经解决了.问题是我必须在for循环中检查CKEDITOR的实例,我没有检查过.所以我添加了for循环来检查实例,一切都运行正常.
ajax更新: $('form[name="formEditProductGeneralInfo"]').submit(function(e) { for (instance in CKEDITOR.instances) { CKEDITOR.instances[instance].updateElement(); } var inputData = new FormData($(this)[0]); $.ajax({ url: '{{ url(' / admin / products / update / general ',processData: false }); e.preventDefault(); return false; }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |