java利用iframe实现form表单上传文件并返回结果

JFrame文件上传Java_swing应用 一个Java应用,包含登录,文件上传,日期选择(检索条件),文件检索功能 大家可以根据自己需要改装使用 立即下载
转: http://www.iteye.com/topic/81120
通过form表单提交,实现文件上传,并不刷新页面返回参数(成功,或失败);
实现这一功能最重要的两点,1iframe 2.target
target: 属性规定在何处打开 action URL。
功能代码实现:
前台部分:
<html:form styleId="form" action="/policy/sslvpn/back.do?method=importFile" enctype="multipart/form-data" target="hframe" onsubmit="return checkSystemInfo();">
	<div class="error-tip"></div>
		<div id="wrapper">
		<fieldset class="form-container" style="height: 80px">
			<legend>策略导入</legend>
				<div align="center">
					<html:file property="theFile"></html:file>
					<input type="submit" value="确定"><span id="msg"></span>
				</div>
		</fieldset>
	</div>
	<iframe name ="hframe" id="hframe" style=" display: none" ></iframe >
</html:form>
前台jQuery:
function callback(msg){  
    jQuery("#msg").html("<font color=red>"+msg+"</font>");
}  
注:前台页面我用的是Struts标签,至于使用什么标签是无所谓的; 前台页面代码最主要的是iframe标签,和form标签中的target属性,iframe标签的name属性要和form表单中的
target属性的值相同
js的 callback 方法是回调方法
后台代码:
	public ActionForward importFile(ActionMapping mapping,ActionForm form,
			HttpServletRequest request,HttpServletResponse response)
					throws Exception {
		HttpSession session = request.getSession();
		UserObject user = AuthorityControl.getUser(session);
		ServletContext servletContext = session.getServletContext();
		
		BackFileManager manager = new BackFileManager(user);
		UploadForm uploadForm = (UploadForm)form;
		
		FormFile theFile = uploadForm.getTheFile();
		String fileName = theFile.getFileName();
		String uploadPath = servletContext.getRealPath("/upload");
		InputStream inputStream = theFile.getInputStream();
		
		File file = createFileFromInputStream(fileName, inputStream, uploadPath);
		String result = manager.importFile(file);
		String msg ="";
		if(result!=null&&result!=""){
			msg =result;
		}else{
			msg="导入成功!";
		}
		response.setContentType("text/html;charset=utf-8");
		response.getWriter().print("<script type='text/javascript'>parent.callback('"+msg+"')</script>");
		response.getWriter().flush();
		response.getWriter().close();
		return null;
	}

from 表单提交返回值用post或者是get方法实现 from 表单提交的返回值可以用jquery的post或者是get方法去实现,具体如下,感兴趣的朋友可以参考下,希望对大家有所帮助 立即下载

相关推荐

【2022KaliLinux】openvas/gvm 没有scan configs 或者是 scan config error “XXXXXXXXXXX”

gvm/openvas的configuration的scan config为空

zbossz的学习小分队 3608

java action例子_实例——创建ActionForm Bean

创建ActionForm Bean当用户提交HTML表单后,Struts框架将自动把表单数据组装到ActionForm Bean中。ActionForm Bean 中的属性和HTML表单中的字段一一对应。ActionForm Bean还提供数据验证方法,以及把属性重新设置为默认值的方法。Struts框架中定义的ActionFrom类是抽象的,必须在应用中创建它的子类,来存放具体的HTML表单数据。...

weixin_39870132的博客 300

IAR链接器配置文件(.icf)实战指南:从内存映射到代码布局

本文深入解析了IAR链接器配置文件(.icf)的核心作用与实战配置方法。作为嵌入式开发的“内存地图”,.icf文件精确控制代码与数据在Flash和RAM中的布局。文章从定义存储空间、划分区域、预留栈堆,到精确放置中断向量表、代码段及初始化控制,提供了完整的配置指南与避坑技巧,帮助开发者优化内存使用,解决链接错误,是掌握嵌入式系统底层内存管理的关键。

fun88的博客 918

如何通过submit提交form表单获取后台传来的返回值

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.youkuaiyun.com/qq_34651764/article/details/76373846 ...

WGH100817的博客 618

嵌入式Linux网络调试踩坑记:YT8531/YT8521 PHY驱动移植与设备树配置实战

本文深入解析嵌入式Linux系统中YT8531/YT8521 PHY驱动移植与设备树配置的实战经验。从网络不通的常见现象入手,详细介绍了驱动移植关键点、设备树配置详解及常见问题排查技巧,帮助开发者快速解决RGMII接口调试难题,提升嵌入式网络开发效率。

weixin_42525328的博客 448

【即插即用模块】注意力篇 | ECCV 2024 | DPB:高低频动态分离+双提示融合,PSNR直冲40+!

本文提出了一种基于频率提示的图像恢复方法FPro,通过动态滤波器分离输入特征的高低频分量,并采用双提示块(DPB)进行频域专属提示生成与调制。DPB包含低频提示调制器(LPM)和高频提示调制器(HPM),分别处理不同频段信号,通过生成提示组件并融合解码器特征来优化恢复效果。实验表明,该方法在U型结构中表现优异,尤其适用于分割、底层视觉和多模态任务。模块通过动态无监督频率分离、频域专属提示生成和适配性融合机制,有效解决了传统方法对频域信息关注不足的问题,显著提升了图像恢复质量。

主要更新底层视觉(去噪、超分等)相关的科研内容,形式为【论文精读】+【论文复现】 149

java表单提交方法_JAVA基础知识:简单介绍form的提交方式

JAVA基础知识:简单介绍form的提交方式一:form简介Easyui中的form有两种提交方式、结合自己新添加的一种ajax提交方式、本文简单说明form的三种提交方式、和结合validatebox使用来校验基本信息。二:form提交以登录为例:下面是登录页面、注意要导入easyui所需要的css和js。要引入的css+js:登录的div和表单:username: password:简单说明:...

weixin_42395135的博客 1027

ardupilot BMI088加速度陀螺仪学习

本节主要记录ardupilot 中BMI088传感器的学习过程,欢迎批评指正。BMI088是一款高性能6轴惯性传感器,由16位数字三轴±24g加速度计和16位数字三轴±2000°/ s陀螺仪组成。 BMI088允许高精度测量方向和沿三个正交轴的运动检测。BMI088具有高振动鲁棒性和3 x 4.5 x0.95mm³的小尺寸,是用于无人机和机器人应用等恶劣环境的高性能IMU中的独特产品。 BMI088专门设计用于有效抑制由于PCB上的共振或整个系统的结构而可能发生的振动。 除了高振动稳定性外,BMI088的出

陌城烟雨 2057

iframe做上传和读取数据

jsp页面              固定资产管理                                                                                              $(function(){             $('#sub').removeAttr('

三人行,必有我师焉。 1287

YOLO11涨点优化:原创自研 | 魔改Bottleneck,具备多尺度和特征通道融合的结构

可以将C3k2_MSAMCS放在neck,或者backbone和neck同时修改,具体看自己数据集的涨点情况决定

①答疑群聊服务;②YOLO大模型知识问答系统;③计算机视觉论文生成智能体; 1653

AutosarMCAL开发——基于TC367、EBTresos 开发之PORT

下图为开漏输出与推挽输出电路区别,推挽输出有两个极性相反的mos构成,一个管子导通另一个管子关闭以实现输出高低电平(电流较小不具备驱动能力),开漏输出仅使用一个MOS管,所以在这种模式下只能输出低电平,想要输出高电平需要外部提供(输入电流不可超过引脚最大电流显示否则会烧MCU)开漏输出:输出寄存器为低电平时,经过输出控制电路变成一个高电平,N-MOS导通,低电平从I/O引脚输出,输出寄存器为高电平时,P-MOS和N-MOS都是截止状态,电平无法通过,想要输出高电平需要外接上拉电阻。

qq_45583706的博客 1406

PC支付宝支付解析返回from两种方式

PC扫码支付的方式,前置模式和跳转模式的实现方式: 1、前置模式的处理实现,前置模式是将二维码前置到商户的订单确认页的模式。需要商户在自己的页面中以 iframe 方式请求支付宝页面 效果如下: html代码: <iframe id="alipayFrame"></iframe> js代码: let o = document.getElementById("alipayFrame") let ed = document.all ? o.contentWindow.d

Micheal_Bear的博客 3886

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

使用iframe无刷新上传文件,并获取返回值

使用iframe无刷新上传文件,并获取返回值项目中需要完成这样一个功能 新增一个用户,填写他的基本信息,并且还要上传他的头像,头像可以预览 项目使用springmvc开发的,还不是很了解,所以做的有点慢,不过总算是做出来了,应该还会有更好的方式大致上遇到了两个问题 1. 怎么无刷新上传文件,有用ajax的,但是感觉有点麻烦,而且后台代码不会写,所以选择了iframe… 2. 怎么获取表单su

曾经最动心的专栏 7070

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

form+iframe解决跨域上传文件

(1)jsp代码:   控件标识 更新类型 备注             资源文件:   图片大小必须小于500K。 说明:form中的target指向iframe中的name。这点要注意。 (2)js代码: //添加对话框 function initDialog(

inrtyx的专栏 3036

java iframe文件上传_Java文件上传

最近项目需要使用 Angular,对于初学 Angular 的我只能硬着头皮上了,项目中有一个需求是文件上传,磕磕绊绊之下也实现了,将实现过程中学习到的一些知识记录下来以备将来查阅。与表单数据编码相关的知识通常,我们使用 HTML 的标签来为用户输入创建一个表单,使用作为文件上传的控件。要将表单的数据发送给后台,不仅要通过指定的属性method来确定发送数据的 HTTP 方法而且需...

weixin_39786706的博客 338

使用iframe实现无刷新上传文件

很简单,如下代码:                                                                                                                           如上代码,只要设置一个隐藏的iframe,然后设置form的target为iframe的name属性的值,

sueep的专栏 589

java iframe文件上传_详解Ajax和form+iframe 实现文件上传的方法(两种方式)

自从有html5之后,文件上传变的非常简单。很方便的解决了项目中需要用到的文件上传功能。HTML5支持多图片上传,而且支持ajax上传,而且支持上传之前图片的预览,而且支持图片拖拽上传,而且还是纯粹利用file控件实现,JS代码寥寥,想不让人称赞都难啊!HTML5Ajax上传html5的上传实现,是需要file控件以及XMLHttpRequest请求。下面是我封装的一个上传插件:function ...

weixin_39571404的博客 317

iframe无刷新跨域上传文件并获得返回值

原文:http://geeksun.iteye.com/blog/1070607 需求:从S平台上传文件到R平台,上传成功后R平台返回给S平台一个值,S平台是在一个页面弹出的浮窗里上传文件,所以不能用直接用向R平台submit的方式提交,换用一种类AJAX方式实现,此处用了target的方式,是一种伪AJAX. 提交页面代码: Html代码 <form...

diaokai2608的博客 328

如何实现支持大文件的高性能HTTP文件上传服务器

HTTP文件上传是做Web开发时的常见功能,例如上传图片、上传影片等。实现HTTP文件上传也比较简单,用任何Web端的脚本都可以轻松实现,例如PHP、JSP都有现成的函数或者类来调用。但笔者最近在做项目时遇到了一个大问题,项目需要上传视频文件,这些视频文件的尺寸一般大于2GB,用PHP开发时,将服务器端的上传尺寸设置得足够大,但用Chrome、FirFox等浏览器上传时,经常出...

白袍小将的博客 2万+

dojo小例子(17)iframe上传文件到rest后台,以及乱码问题解决

1、上传文件的form必须是multipart/form-data --> submit reset

earthhour的专栏 2112

Html之form+iframe实现文件上传的方法-yellowcong

在html界面中完成类似ajax方式的上传方式,这种方式的可以通过form+iframe的方式实现,我们通过form表单提交,将数据都输出到iframe上,然后获取里面的json数据,转化为json对象,然后获取里面的信息,设定到界面上。 伪ajax上传效果上传后,可以获取到frame里面的内容,然后可以做显示或则任何操作了。

3831

iframe无刷新跨域上传文件并获取返回值

[java] view plaincopy 无网不剩      retweet  iframe无刷新跨域上传文件并获取返回值      通常我们会有一个统一的上传接口,这个接口会被其他的服务调用。如果出现不同域,还需要无刷新上传文件,并且获取返回值,这就有点麻烦了。比如,新浪微博启用了新域名"http://www.weibo.com">www.weibo.com,但接口还是使用原来的

dream8062的专栏 1443

Iframe实现Ajax文件上传Servlet响应上传结果

原理是form提交表单,设置target为iframe的name,iframe为隐藏,实现无刷新提交。 Servlet通过返回html代码,iframe内的页面通过parent调用主页面的回调函数,进行处理响应结果。 上传使用的commons file upload  ,依赖2个jar:commons-fileupload.jar  commons-io-2.2.jar。 jsp页面上的fo

男儿当自强 981

java iframe文件上传,form+iframes模拟文件上传

1 DOM结构上传2 JS部分//上传文件//监听frame的 onload方法let oFrm = document.getElementById("uploadFrame");oFrm.onload = oFrm.onreadystatechange = function () {if (this.readyState && this.readyState != "comple...

weixin_30667831的博客 236

form表单的target属性

一 表单提交到了哪里? 我们都知道表单提交到服务器,java,php,asp等服务...

Leo_niu的博客 268
Programmer_JR
博客等级 码龄10年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值