2017-08-29 70 views
0

我想顯示上傳圖像的縮略圖,而無需重新加載頁面(AJAX)。使用AJAX和Laravel顯示上傳的圖像

這裏是我的Laravel控制器:

public function save(Request $request) 
{ 
if (Input::hasFile('file')) 
    { 
     $file = $request->file('file'); 
     $name = $file->getClientOriginalName(); 
     Storage::disk('local')->put($name, File::get($file)); 
     $path = 'storage/files/'; 

     return response()->json(array('path'=> $path), 200); 
    } else { 
     return response()->json(false, 200); 
    } 
} 

HTML查看使用刀片:

@foreach($lists as $item) 
    <div style="float: left;"> 
     <img id="preview" src="{{ asset('storage/files/'.$item->name) }}" alt="" with="100" height="100"> 
    </div> 
@endforeach 

這重裝的時候,我想無需刷新網頁,以顯示它顯示的圖像。

+0

你可以顯示你的代碼爲ajax請求嗎? –

+0

我沒有任何,我在Laravel創建了JSON響應,但我對AJAX的有限知識不允許我這樣做。對不起。 –

回答

0

你不需要AJAX來顯示上傳圖片的縮略圖。改變你的form像這樣:

<img id="preview" src="{{ asset('storage/files/'.$item->name) }}" alt="" with="100" height="100"> 

<input type="file" name="image" style="display:none"; onchange="document.getElementById('preview').src = window.URL.createObjectURL(this.files[0])">