作技術和人生同樣,哪有什麼作不到,只有想不到。css
乍一看你覺得我在開玩笑呢。百度過,沒有這種操做。html
沒有就不能實現了嗎 /壞笑java
-------------------------------------------------------------------------------華麗麗分割線---------------------------------------------------------------------------------------------------------------------------------------------ajax
localStorage是存儲在客戶端的,道理上講和服務端八竿子打不着,除非用ajax。但我就是要用表單,由於有時候上傳大文件到服務端要用form提交的,而form裏要寫data-ajax="false" (即禁用ajax)post
不是舉例,但能夠清晰的說明操做:spa
首先是css樣式:orm
<style type="text/css"> #isme{ display:none; } </style>
//你是不但願客戶端存的信息(每每是用戶名和密碼之類的)顯示到頁面上的對麼htm
表單的內容:blog
<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:ip
<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(); //二、建立一個文件上傳解析器 ServletFileUpload upload = new ServletFileUpload(factory); //解決上傳文件名的中文亂碼 upload.setHeaderEncoding("UTF-8"); //三、判斷提交上來的數據是不是上傳表單的數據 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(); } }
這算是當心機吧,不過可能能幫到一些人。