首页 > 编程 > Python > 正文

Django实现图片文字同时提交的方法

2020-02-23 01:23:37
字体:
来源:转载
供稿:网友

本文实例讲述了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>             
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表