##わからないこと
いつもお世話になっております。
この度ファイルデータをajaxを使って飛ばそうとしています。
ファイルのほうは問題なく取得できているのですが、それに追加でappendでidにあたるものを飛ばそうとしています。しかしそのappendができておりません。
コードは下記になります。
var $fileList = $('#file_list'); $fileList //画像がアップロードされた時の処理 .on('change.inputFile', '.input_file', function(e){ //画像が3つになった場合にinputタグを非表示にする処理 //上にも同じコードがあるのでまとめた方がいいのですが... var $fileListLI = $('#file_list li label input[name=img_file]'); var inputFileNum = $fileListLI.length; var lastInputFile = $fileListLI.eq(-1); if (inputFileNum == 4){ $(lastInputFile).hide(); } //Ajaxで飛ばすdata(FromDataオブジェクト)を生成する処理 var fd = new FormData($('#cv_form').get(0)); //最後から2番目のinputタグを拾う処理 //画像が選択されるinputタグは必ず最後から2番目 var targetFile = $fileListLI.eq(-2); //1画像毎のUPなので[0]、複数である場合は[1][2]... fd.append("file", $(targetFile).prop("files")); $.ajax({ url: "{{action('PortalController@spimgupload')}}", type: 'post', dataType: 'html', data: fd, processData: false, contentType: false }) // 失敗時 .fail(function(jqXHR, statusText, errorThrown){ console.log(jqXHR); alert('エラー発生'); }) // 成功時 .done(function(data, textStatus, jqXHR){ // successImgUpload(); console.log(data); var imgUrl = '{!!storage_path("app/public/cv/")!!}'; if(textStatus == 'success') { alert('succccccceeeeeeessssss!!'); return true; } else { alert(data); return false; } alert('成功したよ'); }); var $input = $(this), $li = $input.closest('.each_file'), $newLi = $li; $fileList.append($newLi); //サムネイル画像を表示する処理 var file = e.target.files[0], fileName = file.name; //FileReaderオブジェクトの生成 reader = new FileReader(); reader.readAsDataURL(file); reader.onloadend = function(){ var fileReader = this; if(fileReader.result){ var thumb = '<div class="thumbnail"><a href="' + fileReader.result + '" class="swipebox"><img src="' + fileReader.result + '" width="100px" style="max-width: 100px;"><input type="hidden" name="id" value="{{request()->input('id')}}"><input type="hidden" name="filename" value="' + fileName + '"></a><span class="delete_btn del-button ui-opaimg">削除</span></div>'; $li.append(thumb); } return this; }; $input.hide(); return this; });
<form method="post" action="{{url('multifileUpload')}}" enctype="multipart/form-data" id="cv_form"> <ul id="file_list"> <li class="each_file"> <label class="bt-photo02 ui-bt-nomal ui-opaimg">添付する <input type="file" id="uploadName" class="input_file" name="img_file[]" value="アップロード" accept="image/*;capture=camera" style="display:none;"> <input type="hidden" name="id" value="{{request()->input('id')}}"> </label> </li> </ul> <!-- <input type="submit" value="画像アップロード"> --> <p><button type="submit" id="submit_btn">送付する</button></p> </form>
ご教授いただければ幸いです。
よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー