我想將一些表單數據和文件從表單傳遞到燒瓶應用程序。但我不能用ajax傳遞它。我猜數據有問題。我已經在 ajax 中發送數據,但在 flask 應用程序中我沒有得到任何字符串或文件。這是我的 html 代碼:<form id="user_vote" enctype = "multipart/form-data"> <br> <br> <div class="row"> <label class="col-sm-2">Name:</label> <div class="col-sm-10"> <input type="text" name="name" id="name" rows="2" class="form-control" required> </div> </div> <div class="row"> <label class="col-sm-2">National ID Image:</label> <div class="col-sm-10"> <input type="file" name="national_id_image" id="national_id_image" rows="2" class="form-control" required> </div> </div> <br> <div class="row"> <label class="col-sm-2">Vote:</label> <div class="col-sm-10"> <input type="number" name="vote" id="vote" rows="2" class="form-control" required> </div> </div> <div class="row"> <div class="col-lg-12 text-center"> <input type="button" id="submit_vote" class="btn btn-primary btn-lg" value="Authenticate and Encrypt Vote"> </div> </div>這是我的 ajax 代碼:: $(function(){ var form = $('#user_vote')[0]; var data = new FormData(form); //console.log('hello'); //console.log(document.getElementById('submit_vote')); $('#submit_vote').click(function(){ //console.log(data); //console.log('hello'); $.ajax({ url: '/encrypt/vote', type: "POST", dataType: 'json', enctype: 'multipart/form-data', data: data, contentType: false, cache: false, processData:false, success: function(response)
1 回答

蝴蝶不菲
TA貢獻1810條經驗 獲得超4個贊
似乎您設置了enctype: 'multipart/form-data', 這是$.ajax() 方法的不存在的屬性。您應該更正此錯誤并簡化請求:
$.ajax({
type: "POST",
data: data,
url: '/encrypt/vote',
cache: false,
contentType: false,
processData: false,
success: function(response) {
/*The rest of your code*/
},
error: function(error){
console.log(error);
}
});
無需設置dataType,默認為Intelligent Guess(xml, json, script, or html)。在這里閱讀更多。
編輯:確保您在 中使用正確的完整路徑url,盡量不要使用相對地址,而是使用https://www.your-server.com/encrypt/vote。
- 1 回答
- 0 關注
- 107 瀏覽
添加回答
舉報
0/150
提交
取消