本文實例講述了Django實現圖片文字同時提交的方法。分享給大家供大家參考。具體分析如下:
jQuery為我們網站開發解決了很多問題,使我們的網站用戶體驗大大的提高了。舉個簡單的例子,我們用AJAX技術來實現對表單的異步提交,使用戶在體驗上有了很大的改觀,用戶在提交數據的同時還可以干一些其他的事情。
不過,今天在開發中遇到一個特別頭痛的問題,剛開始不知道,以為可以實現,糾結了將近4個小時之久,但結果很是令人失望。
問題是這樣的:為了提高用戶體驗,我決定使用AJAX異步提交,于是我用jQuery的$.post去異步提交表單數據,文本信息可以很輕松的提交,但是,卻怎么也無法提交圖片數據。怎么辦呢?
在網上查了很多資料,后來發現jQuery不支持圖片上傳(附件上傳),但是有相關的插件,于是我開始慢慢琢磨,開始用另一個專門上傳文件的插件jquery.ajaxfileupload.js,折騰了很久,總可以上傳圖片了。但是新的問題有產生了。
通過ajaxfileupload來異步上傳圖片的同時,卻不能提交文本數據。囧啊…….
在網上查了很多資料,折騰了許久,沒有Django開發的相關資料,怎么辦?自己想辦法…….
后來找到了解決方案,跟大家分享一下:
思路:
由于使用jquery.ajaxfileupload.js插件不能傳遞自定義的參數,腫么辦?自己改寫插件唄。碰巧,網上有別人改過的現成代碼,二話不說,先拿來試試。以下即是我試驗的過程。
1. 前臺頁面(部分代碼):
<table border="0" width="100%"> <form action="." method="post" id="annex_form_2"></form> <tbody> <tr> <td class="col_name" nowrap="nowrap" width="26%">證書名稱:</td> <td width="64%"><input size="65" class="input_general" id="prove_name_2" maxlength="50" name="prove_name" type="text"></td> <td nowrap="nowrap" width="7%"></td> <td nowrap="nowrap" width="3%"><a href="javascript:void(0);" onclick="SubmitAnnexInfo(2)" title="保存"><img src="/static/img/hr_manage/btn_save.gif" alt="點此保存"></a></td> </tr> <tr> <td class="col_name">證件類型:</td> <td><select id="prove_type_2" name="prove_type"> <option selected="selected" value="1">身份證</option> <option value="2">學位證</option> <option value="3">其他證</option> </select></td> <td> </td> <td> </td> </tr> <tr> <td class="col_name">證書描述:</td> <td><input size="80" class="input_general" id="prove_desc_2" maxlength="60" name="prove_desc" type="text"></td> <td> </td> <td> </td> </tr> <tr> <td class="col_name">附件地址:</td> <td><input size="45" class="input_general" id="prove_url_2" maxlength="45" name="prove_url" style="border:0px;" type="file"></td> <td> </td> <td> </td> </tr> <tr> <td colspan="4"> <hr> </td> </tr> </tbody> </table>
新聞熱點
疑難解答