h5通过表单将localStorage里的信息传到java后台servlet处理

做技术和人生一样,哪有什么做不到,只有想不到。

乍一看你以为我在开玩笑呢。百度过,没有这种操作。

没有就不能实现了吗 /坏笑

-------------------------------------------------------------------------------华丽丽分割线---------------------------------------------------------------------------------------------------------------------------------------------

localStorage是存储在客户端的,道理上讲和服务端八竿子打不着,除非用ajax。但我就是要用表单,因为有时候上传大文件到服务端要用form提交的,而form里要写data-ajax="false"      (即禁用ajax)

不是举例,但可以清晰的说明操作:


首先是css样式:

<style type="text/css">
#isme{
display:none;
}
</style>

  //你是不希望客户端存的信息(往往是用户名和密码之类的)显示到页面上的对么


表单的内容:

<form method="post" action="你的servlet地址"  enctype="multipart/form-data"  data-ajax="false">
  <input type="file" class="form-control" name="file1"> <!--这个是大文件,好吧不重要!!!可以忽略 -->
     <div id="isme"> 这是你事先存在localStorage里的用户名:<input type="text" id="iname" name="iname"></div> <!--name这个属性一定要有,不知道为什么,但是没有的话后台获取不到-->

</form>

  jQuery:

<script>

$(document).ready(function(){
   $("#iname").val(localStorage.iname);//下划线的表示你已经存好了一个key为iname的值,然后赋给input,不要紧张,这部分不会显示在页面的

});

</script>

  后台servlet:

	public void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
		List<String> value = new ArrayList<String>();//万一你一高兴写了好几个input想要传递localStorage
		response.setCharacterEncoding("utf-8");
                //上传大文件的部分在分类“soga开发实录”第三篇里有
                try{
                	DiskFileItemFactory factory = new DiskFileItemFactory();
                    //2、创建一个文件上传解析器
                    ServletFileUpload upload = new ServletFileUpload(factory);
                     //解决上传文件名的中文乱码
                    upload.setHeaderEncoding("UTF-8");
                    //3、判断提交上来的数据是否是上传表单的数据
                    List<FileItem> list = upload.parseRequest(request);
                    for(int index=0;index<list.size();index++){
                    	 //如果fileitem中封装的是普通输入项的数据
                            String name = list.get(index).getFieldName();
                            //解决普通输入项的数据的中文乱码问题
                            value.add(list.get(index).getString("UTF-8"));
                            System.out.println(name + "=" + value.get(index));
                    }
                }catch (Exception e) {
                    e.printStackTrace();

                }
    }

  这算是小心机吧,不过可能能帮到一些人。

时间: 2024-09-30 07:07:43

h5通过表单将localStorage里的信息传到java后台servlet处理的相关文章

c# 模拟表单提交,post form 上传文件、大数据内容

表单提交协议规定:要先将 HTTP 要求的 Content-Type 设为 multipart/form-data,而且要设定一个 boundary 参数,这个参数是由应用程序自行产生,它会用来识别每一份资料的边界 (boundary),用以产生多重信息部份 (message part).而 HTTP 服务器可以抓取 HTTP POST 的信息, 基本内容:1. 每个信息部份都要用 --[BOUNDARY_NAME] 来包装,以分隔出信息的每个部份,而最后要再加上一个 --[BOUNDARY_N

使用ajax提交form表单,包括ajax文件上传 转http://www.cnblogs.com/zhuxiaojie/p/4783939.html

使用ajax提交form表单,包括ajax文件上传 前言 使用ajax请求数据,很多人都会,比如说: $.post(path,{data:data},function(data){ ... },"json"); 又或者是这样的ajax $.ajax({ url:"${pageContext.request.contextPath}/public/testupload", type:"post", data:{username:username},

ajax提交表单、ajax实现文件上传

ajax提交表单.ajax实现文件上传,有需要的朋友可以参考下. 方式一:利用from表单的targer属性 + 隐藏的iframe 达到类似效果, 支持提交含有文件和普通数据的复杂表单 方式二:使用jquery的$.ajax({..}), 支持提交普通表单,但不支持含有文件的复杂表单; ($.post 或 $.get底层用的都是$.ajax) 方式三:使用jquery插件ajaxFileUpload.js, 支持上传文件,但不支持提交表单 方式四:使用jquery.from.js,支持提交同时

angular js h5关于表单验证的例子

angular js表单验证 <!DOCTYPE html><html><head lang="en"> <meta charset="UTF-8"> <title></title> <script src="angular.min.js"></script> <link rel="stylesheet" href="

H5新增表单属性

一.form属性 1 <form id="test"> 2 <input type="text" placeholder="请输入合适的信息"/> 3 </form> 4 <input form="test"/> 最后一个input并不属于form表单元素,在提交表单是,input不会随着表单一起提交,但是在html5中我们只需要在input属性中增加form属性,并制定form

使用django表单,使网页添加上传文件,并分析文件。

开发环境是: apache + python + django+ eclipse(开发环境) 欲达到目的: 在网页上,添加上传文件控件.然后读取csv文件,并分析csv文件. 操作步骤: django 是MVC的设计模式 (模型M,视图V,控制器C) 1.从django的基本模型中,构建自己的模型. 在myforms.py文件中添加如下代码,之后在html显示的表单数据就可以采用这个模型的数据了. from django import forms from django.views.decora

使用ajax提交form表单,包括ajax文件上传

前言 使用ajax请求数据,很多人都会,比如说: $.post(path,{data:data},function(data){ ... },"json"); 又或者是这样的ajax $.ajax({ url:"${pageContext.request.contextPath}/public/testupload", type:"post", data:{username:username}, success:function(data){ w

编写HTML表单提交并接受数据信息(获取用户通过表单提交的内容)

MyInfoForm.java package com.fxl; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServlet

c#代码,模拟form表单发送post请求,上传文件(并带其他参数)

本人对post理解不深,前段时间遇到一个需要用c#代码发送post请求上传文件的业务,于是参考了几篇帖子,加上自身实践写出了如下代码.写的比较low 望各位大大指正^_^. 业务需求: 对方给了一个接口,让传四个参数分别为"modelId.fileContent.updateTime.encrypt" 其中modelId.updateTime.encrypt 都是普通的字符串类型.fileContent则是二进制文件 我实在是不了解post的相关知识,平时只是普通的用法,没有深层看过相