AJAX-在laravel上上传无格式的Ajax图像

时间:2018-07-12 06:18:21

标签: ajax laravel

我尝试使用无格式的ajax制作上传图像,当我发送没有图像的数据时,数据成功提交到数据库,但是当我添加图像时,当我尝试提交时,根本没有响应,< / p>

这是我的模板代码:

 <input type="hidden" name="lesson_id" value="{{-- $lessons->id --}}">
   <input type="hidden" name="parent_id" value="0"> -->
    <div class="form-group">
      <label>Komentar</label>
      <textarea rows="8" cols="80" class="form-control" name="body" id="textbody0"></textarea>
    </div>
   <ul class="right">
  <input type="file" name="image" id="image" />
  <img id="myImg" src="#" />
 <button type="button" class="btn btn-primary" onClick="doComment({{ $lessons->id }},0)" >Kirim</button> 

这是我提交数据的脚本:

function doComment(lesson_id, parent_id) {

    var body = $('#textbody'+parent_id).val();
    var image = $('#image').prop('files')[0];

    if (body == '') {
      alert('Harap Isi Komentar !')
    }else {


      var postData =
                  {
                      "_token":"{{ csrf_token() }}",
                      "lesson_id": lesson_id,
                      "parent_id": parent_id,
                      "image": image,
                      "body": body
                  }
    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="token"]').attr('value')
        }
    });
      $.ajax({
          type    :'POST',
          url     :'{{ url("lessons/coments/doComment") }}',
          dataType: 'json',
          data    : postData,
          beforeSend: function(){
            // Show image container
            swal({
                title: "Sedang mengirim Komentar",
                text: "Mohon Tunggu sebentar",
                imageUrl: "{{ asset('template/web/img/loading.gif') }}",
                showConfirmButton: false,
                allowOutsideClick: false
              });
              {{--  $("#loader").show();  --}}
          },
          success:function(data){
            if (data.success == false) {
               window.location.href = '{{ url("member/signin") }}';
            }else if (data.success == true) {
              $('#textbody'+parent_id).val('');
              swal({
                title: "Komentar anda sudah terkirim!",
                showConfirmButton: true,
                timer: 3000
              });

              getComments();
            }
          }
      });
    }
  }

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

postData = new FormData();
if(!!file.type.match(/image.*/)){
  postData.append("image", file);
  $.ajax({
    type    : 'POST',
    url     : '{{ url("lessons/coments/doComment") }}',
    data    : postData,
    dataType: 'json',
    processData: false,
    contentType: false,
    success: function(data){
        alert('success');
    }
  });
}else{
  alert('Not a valid image!');
}