[学习笔记]--Jfinal 表单提交附件
近期。项目里面用到了Jfinal 里面的上传附件。
Jfinal 的Controller 里面提供了一个 getFile系列方法提供文件上传。
我这里呢,是文件上传和表单參数一起提交。
页面类似下图:
这里form表单里面使用了 enctype="multipart/form-data" 。
先看看Jfinal手冊的说明吧!大家看了就知道了
然后还有个问题 假设是表单提交 还不能够用ajax 提交,详细的原因呢也找到了 http://www.oschina.net/question/941098_93842
这个就是为什么不能够使用ajax 提交了的原因。
然后我们能够在页面里面 这样提交
方法一:
function tosave(){
var data = $("#表单id").serialize();
$("#<span style="font-family: Arial, Helvetica, sans-serif;">表单id</span>").attr("action","equipment/saveOrUpdate?"+data);//跳到指定的contronller
$("#表单id").submit();//提交
};
在提交button设置一个 onclick 事件。这样我们就把前台的表单里面的 A,B,C,D...等參数 我们就能够提交到后台了!
后台代码:
UploadFile file = getFile("filedata", path, 200 * 1024 * 1024, "UTF-8");//上传文件 而且获取表单參数
好。到这里基本文件上传和表单里面的參数 我都能够获取到了。以往在这里 我们都是保存成功后 提示保存成功。而且刷新页面。
可是这里我们没有返回值,或许你能够说你能够重定向或是转发啊。
额,我仅仅想说我这里的需求就是提示保存成功。而且刷新列表页面,或是提示保存失败,
也相同要刷新页面。
so ..我就找了另外一种方法提交
$('#表单id').ajaxForm({
target:'#output1',
iframe:true,
url : 'abc/saveOrUpdate',
beforeSubmit: function (){
var filename = $("input[name='filedata']").val();
// alert($("#equ_no").val());
// alert(filename);
// if(filename.EndWith(".png") || filename.EndWith(".jpg")
// || filename.EndWith(".jpeg")|| filename.EndWith(".ico")){
// return window.confirm("确定要处理此文件吗? ");
// }else{
// alert("请上传图片文件!");
// return false;
// }
}
});
这里用的是jquery 表单插件ajaxForm 详细使用方法去百度,我也是赶猪上架。
好吧 继续看 我改进了的后台 部分代码
String message = "操作错误";
String result = Setting.OPTION_FAILUE;
<span style="font-family: Arial, Helvetica, sans-serif;">UploadFile file = getFile("filedata", path, 200 * 1024 * 1024, "UTF-8");//上传文件 而且获取表单參数</span>
this.setAttr("result", result);
this.setAttr("message", message);
this.renderHtml("<script>parent.showResponse('"+result+"','"+message+"')</script>");
有木有发现 这里的renderHtml就类似 之前的 rendJson();
这后面的 代码 有的涉及到了 其它地方 所以我就选了一下 相关的出来,大家能够看看这个思路。写作水平有限。请勿喷~
[学习笔记]--Jfinal 表单提交附件的更多相关文章
- 20151223jquery学习笔记--Ajax表单提交
传统的表单提交, 需要多次跳转页面, 极大的消耗资源也缺乏良好的用户体验. 而这款form.js 表单的 Ajax 提交插件将解决这个问题.一. 核心方法官方网站: http://malsup.com ...
- SpringMVC学习笔记:表单提交 参数的接收
SpringMVC可以接收原生form表单和json格式数据 有一个名为Book的model,其中的属性如下: 字符串类型的name,数字类型的price,数组类型的cover,集合类型的author ...
- AngularJS 1.2.x 学习笔记(表单校验篇)
https://my.oschina.net/cokolin/blog/526911 摘要: 本文首发于 blog.csdn.net/vipshop_ebs/article/details/39472 ...
- Bootstrap学习笔记(二) 表单
在Bootstrap学习笔记(一) 排版的基础上继续学习Bootstrap的表单,编辑器及head内代码不变. 3-1 基础表单 单中常见的元素主要包括:文本输入框.下拉选择框.单选按钮.复选按钮.文 ...
- Symfony2学习笔记之表单
对于一个Web开发者来说,处理HTML表单是一个最为普通又具挑战的任务.Symfony2集成了一个Form组件,让处理表单变的容易起来.在这一节里,我们将从基础开始创建一个复杂的表单,学习表单类库中最 ...
- [知了堂学习笔记]_Jquery_Validate 表单校验的使用
一.效果图: 二.JqueryValidate的好处 在做注册.或者类似以上的表单提交的时候,大家是不是都很烦那种,把数据拿到后台去判断, 可能经过了正则表达式之类的复杂判断,然后发现数据错误.接着通 ...
- php学习笔记-获取表单数据
在网页上经常要填写用户名和密码,点击确认按纽之后,用户名和密码经过前端处理之后发送到了服务器上,那么服务器端怎么获取到这些用户提交的数据呢?就是通过超级全局变量 _POST和_GET 先拿_POST做 ...
- vue学习笔记(六)表单输入绑定
前言 在上一章vue学习笔记(四)事件处理器这一篇博客的内容中,我们已经了解vue是如何绑定事件的,而本篇博客主要讲解的是vue中表单输入的绑定,通常我们自己提交信息的时候都是通过表单将信息到服务器的 ...
- PHP再学习1——cURL表单提交、HTTP请求和响应分析
1.前言 最近迷恋WEB方面的技术,虽然自己是一个嵌入式工程师,但是我深知若需要把传感器终端的数据推送至“平台”必然会和WEB技术打交道.在工作中发现嵌入式工程师喜欢 二进制形式的协议,例如MODBU ...
随机推荐
- poj 1811 Prim test
基本上一个裸的Miller_Rabin大素数判定和一个裸的Pollard_rho素数分解算法,当模板用吧! #include<cstdio> #include<algorithm&g ...
- HDU 1059 Dividing(多重背包)
点我看题目 题意: 将大理石的重量分为六个等级,每个等级所在的数字代表这个等级的大理石的数量,如果是0说明这个重量的大理石没有.将其按重量分成两份,看能否分成. 思路 :一开始以为是简单的01背包,结 ...
- 面向XX编程
[一篮饭特稀原创,转载请注明出自http://www.cnblogs.com/wanghafan/p/5033186.html ] 基于面向XX编程的个人理解 面向过程编程 Procedure Or ...
- Java:JXL解析Excel文件
项目中,有需求要使用JXL解析Excel文件. 解析Excel文件 我们先要将文件转化为数据流inputStream. 当inputStream很大的时候 会造成Java虚拟器内存不够 抛出内存溢出 ...
- INCOIN Importing Multilingual Items (Doc ID 278126.1)
APPLIES TO: Oracle Inventory Management - Version: 11.5.9 to 11.5.10.CU2 - Release: 11.5 to 11.5 GOA ...
- Centos4.3安装MySQL-python-1.2.3,出现error: command 'gcc' failed with exit status 1
在Linux Centos 4.3上安装MySQL-python-1.2.3的时候出现error: command 'gcc' failed with exit status 1, 具体原因是因为没有 ...
- Centos 6.5中使用yum安装jdk
默认会有open-jdk的安装 我们需要卸载 卸载过程: 查找rpm安装包 rpm –aq|grep java; 卸载 rpm –e –nodeps 安装包 查看目前是否通过yum进行安装jdk yu ...
- c语言诊断_断言库函数#include<assert.h>
诊断<assert.h> assert #include <assert.h> void assert(int exp); assert宏用于为程序增加诊断功能.当asser ...
- js制作圆角按钮(兼容谷歌,ie7,ie8)
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- C#:实体类中做数据验证
主要是在实体类中验证 using System; namespace Jone.Function.attribute{ /// <summary> /// 附加 ...