form表单提交action后,接收到的值为null.

问题描述

我是直接采用属性封装:Action中定义各个的属性要与对应form中的参数同名,并提供GET/SET方法;这是jsp页面的代码<!--导入数据面板--><divid="dlg2"class="easyui-dialog"style="width:400px;height:180px;padding:10px20px"closed="true"buttons="#dlg-buttons2"><formid="uploadForm"action="<%=contextPath%>/base/cmorganization!export.gx"method="post"enctype="multipart/form-data"><table><tr><td>下载模版:</td><td><ahref="javascript:void(0)"class="easyui-linkbutton"onclick="downloadTemplate()">导入模版</a></td></tr><tr><td>上传文件:</td><td><inputtype="text"name=cmorganizationUploadFile></td><!--<td><inputtype="text"name=cmorganizationUploadFile></td>--></tr></table></form></div><divid="dlg-buttons2"><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-ok"onclick="uploadFile()">上传</a><ahref="javascript:void(0)"class="easyui-linkbutton"iconCls="icon-cancel"onclick="javascript:$('#dlg2').dialog('close')">关闭</a></div>

这是提交方法//上传varuploadFile=function(){$.post(gx.contextPath+'/base/cmorganization!upload.gx',gx.serializeObject($('uploadForm')),function(result){if(result.success){varresult=eval('('+result+')');if(result.errorMsg){$.messager.alert("系统提示",result.errorMsg);}else{$.messager.alert("系统提示","上传成功");$("#dlg2").dialog("close");$("#dg").datagrid("reload");}}},'json');}

这是action中的代码privateFilecmorganizationUploadFile;//导入文件publicFilegetCmorganizationUploadFile(){returncmorganizationUploadFile;}publicvoidsetCmorganizationUploadFile(FilecmorganizationUploadFile){this.cmorganizationUploadFile=cmorganizationUploadFile;}publicStringupload()throwsException{System.out.println("进入action了!");System.out.println("=============="+cmorganizationUploadFile);/*POIFSFileSystemfs=newPOIFSFileSystem(newFileInputStream(cmorganizationUploadFile));HSSFWorkbookwb=newHSSFWorkbook(fs);HSSFSheethssfSheet=wb.getSheetAt(0);if(hssfSheet!=null){for(introwNum=1;rowNum<=hssfSheet.getLastRowNum();rowNum++){HSSFRowhssfRow=hssfSheet.getRow(rowNum);if(hssfRow==null){continue;}System.out.println(ExcelUtil.formatCell(hssfRow.getCell(0)));TCrCmOrganizationcmOrganization=newTCrCmOrganization();cmOrganization.setCmName(ExcelUtil.formatCell(hssfRow.getCell(0)));cmOrganization.setCmTimeks(DateUtil.stringToDate(ExcelUtil.formatCell(hssfRow.getCell(1))));cmOrganization.setCmTimejs(DateUtil.stringToDate(ExcelUtil.formatCell(hssfRow.getCell(2))));cmOrganization.setCmOrganizer(ExcelUtil.formatCell(hssfRow.getCell(3)));cmOrganization.setCmCapacity(ExcelUtil.formatCell(hssfRow.getCell(4)));cmOrganization.setCmContent(ExcelUtil.formatCell(hssfRow.getCell(5)));cmOrganization.setCmHost(ExcelUtil.formatCell(hssfRow.getCell(6)));cmOrganization.setCmRecordpeople(ExcelUtil.formatCell(hssfRow.getCell(7)));cmOrganization.setCmSummaryLevel(ExcelUtil.formatCell(hssfRow.getCell(8)));service.save(cmOrganization);}}*/JSONObjectresult=newJSONObject();result.put("success","true");ResponseUtil.write(ServletActionContext.getResponse(),result);returnnull;}

后台打印结果进入action了!==============null

解决方案

解决方案二:
privateStringcmorganizationUploadFile;//导入文件publicStringgetCmorganizationUploadFile(){returncmorganizationUploadFile;}publicvoidsetCmorganizationUploadFile(StringcmorganizationUploadFile){this.cmorganizationUploadFile=cmorganizationUploadFile;}

这个
解决方案三:
文件上传不用form的话,就得借助插件了,你这种写法是不行的,serializeObject应该没法序列化file。
解决方案四:
你的form表单里加了这个enctype="multipart/form-data",出了type=file类型的可以直接在Action里面接收,其他的好像要判断一下的,而且上传文件不是应该是<inputtype="file"/>吗?你这里怎么是个type="text'
解决方案五:
<inputtype="file"enctype="multipart/form-data">
解决方案六:
本来是这样的<td><inputtype="file"name=cmorganizationUploadFile></td>

但是传过去报空指针异常,所以我想是不是file不能用,就换成了text,但还是null.

时间: 2024-11-03 05:15:13

form表单提交action后,接收到的值为null.的相关文章

jQuery改变form表单的action,并进行提交的实现代码_jquery

jQuery改变form表单的action,并进行提交的实现代码 <s:form action="/student/traScore.action?method=list" id="queryForm" name="queryForm"> </s:form> //导出学生实训成绩 function exportScore(){ var path = "${ctx}/student/traScore.action?

动态设置form表单的action属性的值的简单方法_jquery

用jQuery时,可如下设置: form表单: <form name="myform" id="myform" action="ssss" method="post" onsubmit="getUrl();"> javascript方法: <script type="text/javascript"> function getUrl(){ $('form').at

解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题

一 问题 在公司的开发过程中,遇到了一个问题:如何处理 form 表单提交了多个 name 属性值相同的 input 标签?源码如下(源码是在 form 表单之中的): <!--{loop $address $index $one}--> <div class="address_item"> <p> <label> <input type="hidden" name="express_price&quo

form表单提交一个对象封装数据,后台action怎么接收?

问题描述 form表单提交一个对象封装数据,后台action怎么接收? form表单提交一个对象封装数据,后台action怎么接收? 解决方案 从request 中获取数据的. 解决方案二: struts2 form 提交http://blog.knowsky.com/255739.htm 解决方案三: Struts2中表单与Action传递数据三种方式 解决方案四: server端通过request接受,貌似有一个方法,getparXXX什么的了 解决方案五: 我看你jsp的input标签命名

java中form表单提交时Action传入不同的对象

问题描述 java中form表单提交时Action传入不同的对象 如题 在我点保存的时候进入action时传参(参数是实体类),参数有可能是不同的实体类, 解决方案 使用hashmap,hashmap的key是属性,value是属性值.在服务器端通过反射给属性赋值/取值/遍历属性. 解决方案二: 可以通过jquery $(""#id"").attr(""action""xxxxx"")然后再$("

AJAX PHP无刷新form表单提交的简单实现(推荐)_php实例

ajax.php: <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Untitled Document</title> </head> <script language="javascript"> function saveUserInfo() { //获取

表单提交错误后返回内容消失问题的解决方法(PHP网站)_php技巧

表单提交错误后返回内容消失怎么办呐,今天就来分析解决一下这个问题. 状况概述: 做填写表单信息提交的时候会碰到一个问题就是当用户填写并提交表单后,程序判断不符合要求并返回,返回之后之前填写的表单信息会被清空了的情况.如果填写的信息量少还无所谓,如果填写的信息量比较多,这会直接打击到填写信息的人的良好心情.因此解决表单提交错误返回后填写的内容消失的问题是一个提高用户体验度的迫在眉睫的问题.对于这种问题,综合总结了大概有下面几种情况: (1)页面使用了session_start函数,这个函数有个特点

jQuery Form 表单提交插件之formSerialize,fieldSerialize,fieldValue,resetForm,clearForm,clearFields的应用_jquery

一.jQuery Form的其他api 1. formSerialize 将表单序列化成查询串.这个方法将返回一个形如: name1=value1&name2=value2的字符串. 是否可以连环调用: 否, 这个方法返回的是一个字符串. 例子: var queryString = $('#myFormId').formSerialize(); // the data could now be submitted using $.get, $.post, $.ajax, etc $.post('

form表单提交之前加一个判断,正确提交否提交失败

问题描述 form表单提交之前加一个判断,正确提交否提交失败 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerNa