我利用keyup事件使欄位可以自動保存到數據庫
html
<input type="file" id="file" name="cover" accept="image/jpeg, image/png, image/jpg">
...
...
ajax
$('body').on('keyup', '#content, #title', function(e){
var content = $('.note-editable').html();
var title = $('#title').val();
var file = $('#file').val();
$.ajax({
type: "POST",
url: "auto-save",
data: {
"content": content,
"title": title,
// "file": file
},
// dataType: "text",
// enctype: "multipart/form-data",
// cache: false,
// contentType: false,
// processData: false,
success: function(data){
但有個問題
裡面有個 input file
我要如何使他能將圖片檔丟到後端去? (當 input on change的時候)但這不是form 形式,單純取值丟後端
我發現加上了這個完全行不通呢
enctype: "multipart/form-data",
cache: false,
contentType: false,
processData: false,
如果不透過表單的方式,怎麼抓到input file的圖片文件位置丟到後端,好讓我可以move_uploaded_file?
1.你可以透過base64去傳,這樣就是純字串。
2.如果你只是不想讓使用者按submit,你可以用new FormData去傳,這樣背後還是透過form,只是使用者看不到。
https://developer.mozilla.org/zh-TW/docs/Web/API/FormData/Using_FormData_Objects