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

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

7个回答

从request 中获取数据的。

server端通过request接受,貌似有一个方法,getparXXX什么的了

我看你jsp的input标签命名都是对象.属性的 那么你后台应该是struts2吧。在action的类里面定义你的实体类,给get、set方法就可以直接拿到了。习惯都给,其实只给set方法就行

在Action定义一个跟你标签名字相同的对象名project 然后去提供Set方法

    不知道你用的是什么方法接的,
    springMVC里面在controller接到之后直接在映射的方法里面加参数 HttpServletRequest request

@RestControllerr层
@RequestMapping(value = "/project!save.action", method = RequestMethod.POST)表单提交方法只能是POST
public void accept( HttpServletRequest request){
String name =request.getParameter(name);
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
form表单如何提交一个vo对象

在struts1.2的form表单里我需要将一个book(自定义的vo对象)对象提交到指定action里,可是 <html:hidden property="bookId" value=">只能提交字符串,本人才疏学浅,恳请指点一二。 [b]问题补充:[/b] 在struts1.2的form表单里我需要将一个book(自定义的vo对象)对象提交到指定action里,可是本人只能提交字符串,本人才疏学浅,恳请指点一二。 补充: 不想把book对象里的属性分开来传,能不能传整个封装好的对象。能做到吗? [b]问题补充:[/b] 好像真的不能 :( ……Ethip,晓得是用form对象,问题是如何如何将book对象提交。

JavaWeb中form表单的提交

javaweb中同一个form表单中的不同按钮如何提交到不同servlet,如何实现?

javascript如何监听form 表单提交请求?

前端form 表单提交请求如何监听?就像ajax请求可以通过xmlHttpRquest对象去监听 所有的ajax请求,对其中的参数做一层包装再发送到后台,后台返回的数据也可以在此 处做一次封装再发给指定的页面一样,但是xmlHttpRquest捕捉不到form表单提交的 请求,请问各位大神form表单提交的请求前端如何捕获?

如何获取form表单对象的值

<form method="post" class="po-posts"> <div class="po-names"> <label>姓名:</label> <input type="text" name="" class="name-inputs"> </div> <div class="po-phones"> <label>电话:</label> <input type="text" name="" class="name-inputs"> </div> <div class="po-sub"> <input type="button" value="确定" class="po-submits btnDespeak" onclick="show(this.form)"> </div> </form> 我页面中有这样多个表单,我都是这个定义的,当我点击确定按钮时,此时能够获得相对应的表单对象,我该怎么获取到他的两个值呢?

js 提交form表单 无执行 无报错 反正后台都没有进去 走下面的代码了

在js中 取到form 表单 然后submit提交 不执行 不报错 后台没有任何反应 为毛 求解 <form action="${ctx}/precontract_second!${method}.action" method="post" id="formm"> js代码如下: byId("formm").submit(); (就是getelementByid 封装了) window.opener.submit(); window.close();

前端的form表单用thymeleaf绑定会自动向后端发一个json字符串

我在前端用form做了一个评论表单 ![图片说明](https://img-ask.csdn.net/upload/202005/22/1590141655_891297.jpg) 但是后端除了绑定的Javabean,还有一个json字符串 ![图片说明](https://img-ask.csdn.net/upload/202005/22/1590141696_52167.jpg)![图片说明](https://img-ask.csdn.net/upload/202005/22/1590141701_185222.jpg) 这个字符串哪里来的

form上传表单怎么把上传的参数也传到action

我今天写了一个发布新闻的表单,有一些参数,还有图片,我想上传到后台,可是有一个属性怎么也传不过去,一直是null,怎么解决呢?

如何提交带有多个“提交”按钮的表单? (菜单前端)

<div class="post-text" itemprop="text"> <p>I was not sure how to word the title.. if anyone has suggestions to improve, please let me know.</p> <p>Normally when you create an HTML, CSS &amp; PHP form.. there is a designated 'submit' button (or maybe 2 even)....</p> <p>What I am building here is more of a 'menu' front end.. where all of the displayed options have their own 'order' button.</p> <p>Once the 'order' button is clicked...the form should submit to itself.. and the PHP parsing does it 'thing'...</p> <p>I am not clear on the proper way to go about this?</p> <p>Do I just use some jQuery to add some code to each 'order' button to submit the page? </p> <p>Each 'item' in the menu should have its own unique value associated with it.... but since it is NOT a real form with input fields or checkbox/radio buttons.. I'm not clear on how best to 'capture' this data either?</p> <p>SO to summarize:</p> <p>1.) How to best submit a form/page to itself when there is no SINGLE/DEDICATED submit button.. and each item displayed can 'submit' by itself? (jQuery to add events to each 'order' button?)</p> <p>2.) Since I'm not technically posting any data (currently) how best to add and carry over this unique data upon page/form submission (ie: $_POST[] ?) (Add this unique data to the 'order' button that will be used to submit?</p> <p>UPDATE: I guess since 'code' is being requested.. (and I understand that questions should be a this way or that way type of answer).. but it is 'working'' (and that wasnt the issue.. it was what is best practice)..</p> <p>Here is what I am doing to output all the available drinks returned from the query: (basically each button ID is the unique drink 'recipe' that I set as the hidden field before submitting the form)</p> <pre><code>&lt;form id="drinkForm" name="drinkForm" method="post" action="&lt;?=$redirectUrl?&gt;?mode=submit"&gt; &lt;!-- hidden field to hold recipe chosen --&gt; &lt;input type="hidden" name="selectedDrink" id="selectedDrink" value="" /&gt; &lt;? for($i=0; $i&lt;count($drinkList); $i++){ //drink image $ingredientList = ''; $drinkImage = 'images' . $drinkList[$i]['drink_image']; if(!file_exists($drinkImage)){ $drinkImage = 'images/no_image.jpg'; } ?&gt; &lt;div class="drinkListing"&gt; &lt;div class="imageContainer"&gt;&lt;img src="&lt;?=$drinkImage?&gt;"&gt;&lt;/div&gt; &lt;div class="drinkDetails"&gt; &lt;!-- drink title --&gt; &lt;div class="drinkTitle"&gt;&lt;?=$drinkList[$i]['drink_name'] . '('. $drinkList[$i]['drink_id'] .')'?&gt;&lt;/div&gt; &lt;!-- generate drink recipe to be sent on $_POST[''] --&gt; &lt;? for($x=1; $x&lt;=15; $x++){ //check for empty ingredient (end of recipe) if($drinkList[$i]['ingredient_'.$x.'_dispenser'] != ''){ //dispenser type if($drinkList[$i]['ingredient_'.$x.'_dispenser'] == 'bottle'){ $ingredientList .= 'b='; }else{ $ingredientList .= 'v='; } //dispenser $ingredientList .= $drinkList[$i]['ingredient_'.$x.'_dispenser_order'] . ':'; //dosage $ingredientList .= $drinkList[$i]['ingredient_'.$x.'_dosage'] . ','; }else{ //remove trailing comma in ingredient list //$ingredientList = rtrim($ingredientList, ','); //removes all commas $ingredientList = trim($ingredientList,","); break; } } ?&gt; &lt;!-- submit buttons --&gt; &lt;div class="buttonContainer"&gt; &lt;button class="orderButton" id="&lt;?=$ingredientList?&gt;" type="button"&gt;Order&lt;/button&gt; &lt;/div&gt; &lt;!-- drink description --&gt; &lt;div class="drinkDesc"&gt;&lt;?=$drinkList[$i]['drink_desc']?&gt;&lt;/div&gt; &lt;p&gt;&lt;?=$ingredientList?&gt;&lt;/p&gt; &lt;/div&gt; &lt;/div&gt; &lt;? } ?&gt; &lt;/form&gt; </code></pre> <p>and for the jQuery</p> <pre><code>$('.orderButton').click(function() { console.log("button clicked"); var targetRecipe = $(this).attr('id'); //(this.id) or alert($(this).attr('id')); $('#selectedDrink').val(targetRecipe); $('#drinkForm').submit(); }); </code></pre> <p>My question is.. is this best practice? Or is I guess more so.. is this a 'bad' (not approved) approach?</p> </div>

spring boot 前台向后台用thymeleaf传参

前台代码 ``` <form th:action="@{/loadredisstatus}" method="post" th:object="${redisbaseinfo}" > <select class="width-40 chosen-select" name="knowledgePointIdSet" data-placeholder="选择redis"> <option th:each="redisinfolist:${session.redisinfolist}" th:value="${redisinfolist.getRedisIp()}+':'+${redisinfolist.getRedisPort()}" th:text="${redisinfolist.getRedisIp()}+':'+${redisinfolist.getRedisPort()}" th:field="*{ipandport}" >模块名称</option> </select> <input type="submit" /> </form> ``` 后台代码 ``` @RequestMapping(value = "/loadredisstatus", method = RequestMethod.POST) public void loginPost(Model model, @ModelAttribute(value = "redisbaseinfo") RedisBaseInfo redisbaseinfo, HttpServletResponse response, HttpSession session) { String ipandport=redisbaseinfo.getIpandport(); System.out.println("in loadredisstatus "+ipandport); if(ipandport!=null&&!ipandport.trim().equals("")){ String [] arr=ipandport.split(":"); addCourse(response,session,arr[0],arr[1]); } } ``` RedisBaseInfo代码 ``` public class RedisBaseInfo extends BaseObject { private String ipandport; public String getIpandport() { return ipandport; } public void setIpandport(String ipandport) { this.ipandport = ipandport; } } ``` 如上所示现在 ``` th:object="${redisbaseinfo}" ``` 和 ``` th:field="*{ipandport}" ``` 两处报错,运行的话根本运行不起来,想实现的功能是选择一个下拉菜单选项并点击按钮提交后吧他的text封装到redisbaseinfo类里面传到后台处理,请问具体该怎么改这段代码呢

使用jquery ajax判断用户名是否存在后,如果做表单提交?

各位大神好,我还没有学query,但在做练习的时候,需要判断用户名是否存在,于是尝试使用了下$.get()方法来获取action返回值。 用以下代码,我能正确获取到action的返回值。在使用返回值做判断也都是正常的,**但是在表单提交的时候**,无法正常的return,执行if的顺序也很奇怪 代码: ```javascript //检查用户名:不能为空,且不能重复 function checkUsername() { var username = document.getElementById("username").value; var username_message = document.getElementById("username_message"); username_message.style.fontSize = "12px"; //只需要判断是否为空,输入了内容会进行用户名存在的校验 if (username == "" || username.length == 0) { username_message.style.color = "red"; username_message.innerHTML = "请输入用户名"; return false; } //如果用户输入了内容,那么使用ajax验证用户名是否已存在 else{ var actionMessage; // ajax获取到action的查询结果 $.get("user_checkUsername.action?"+new Date().getTime(),{'username':username}, function(data){ alert("in ajax data is: "+data); actionMessage = data; alert("in ajax actionMessage is: "+actionMessage); //本来是在这里面完成判断的,发现有问题后提取出去,问题还是在 }); if(actionMessage=="exist"){ alert("if exist, actionMessage is: "+actionMessage); username_message.style.color = "red"; username_message.innerHTML = "用户名已存在"; return false; } else if(actionMessage=="ok") { alert("if ok, actionMessage is: "+actionMessage); username_message.style.color = "green"; username_message.innerHTML = "用户名可以使用"; return true; } else{ alert("if neither, actionMessage is: "+ actionMessage); return false; } } } ``` onblur失焦时会调用一次这个方法,然后提交表单时,也会调用一次。 问题:data的值是没问题的,不管失焦还是提交表单,alert的弹出顺序都是: if neither, actionMessage is: undefined in ajax data is: exist in ajax actionMessage is: exist 然后就结束了。 请问为什么会出现这种现象?if else的顺序难道不是应该从上到下吗?况且执行完了第一个alert,alert("if neither, actionMessage is: "+ actionMessage);后的return貌似没有执行? 在线跪求答案。

springMVC 数据绑定 多个对象 如何准确绑定?

以前用struts2时,url请求参数自动封装成对象用的很是爽,但是在spring中,就有问题了: 比如,有两个对象 [code="java"]class Student{ private String name; private String type; //比如有自费、公费 } [/code] [code="java"]class teacher{ private String name; private String level; }[/code] 当中的get/set方法省略。 struts2的中jsp的写法是: [code="java"]<form> <input name="student.name" value="Kate" /> <input name="student.type" value="自费" /> <input name="teacher.name" value="Gavin" /> <input name="teacher.level" value="2" /> </form>[/code] 这样子在action中就能封装好student和teacher对象。 但是在spring中,要这么写 [code="java"]@RequestMapping("/school.do") public String school(Student student, Teacher teacher) { return "school"; }[/code] 如果还是想刚才的jsp那些写表单,是不能封装参数的,必须把“student.”和“teacher.”去掉,但是这样封装就不能准确封装了。

struts2在上传文件时获得请求参数的问题

在struts2中可以通过 Map map = ActionContext.getContext().getParameters(); 来获得表单中的数据信息,但当提交的表单格式为enctype=&quot;multipart/form-data&quot;,即在上传文件时通过上面的方式却得不到数据,在不在对应action中声明文件字段的情况下,如何获得struts2已经封装好了的文件及其他字段信息。 在struts2中确实会自动用common-fileupload把要上传的文件先传到服务器上的临时目录,我的问题是怎样在 不在action或实体中声明该字段的情况下获得该上传文件的信息,就像不在form表单中声明enctype="multipart/form-data",但能获得form表单的上传数据:Map<String, Object> map = ActionContext.getContext().getParameters()。 谢谢

封装了个js方法,结果要加上alert()才能运行,而且不会显示alert框?

<pre name="code" class=" 引入js的位置 "> &lt;/body&gt; &lt;script type="text/javascript" src="${pageContext.request.contextPath}/js/linkUrl.js"&gt;&lt;/script&gt; &lt;/html&gt;</pre> <p> </p> <pre name="code" class="调用的地方">&lt;a href="#" onclick="javascript:linkUrl('${pageContext.request.contextPath}/wap/login/register.jsp?topColumnId=${i_TopColumnID}')"&gt; 注册&lt;/a&gt;|</pre> <p> </p> <pre name="code" class="js脚本中的方法">/* * 功能 : 将如"register.jsp?name=a&amp;pwd=a"的链接改成form提交,以达到隐藏表单。 * 使用:将&lt;a href="register.jsp?name=a&amp;pwd=a"&gt;注册&lt;/a&gt;|替换这 * &lt;a href="#" onclick="linkUrl('register.jsp?name=a&amp;pwd=a')"&gt;注册&lt;/a&gt;| * */ function linkUrl(allUrl){ var url,queryString,oneArray,twoArray,name,value,turnForm,turnInput; //1 创建form turnForm = document.createElement("form"); document.body.appendChild(turnForm); //2 解析完整url,加入隐藏域 <span style="color: #ff0000;">alert(allUrl);</span> url = allUrl.substring(0,allUrl.indexOf("?")); queryString = allUrl.substr(allUrl.indexOf("?")+1); // alert(url); // alert(queryString); oneArray = queryString.split("&amp;"); for(var i=0;i&lt;oneArray.length;i++){ twoArray = oneArray[i].split("="); name = twoArray[0]; value = twoArray[1]; //alert(name); //alert(value); turnInput = document.createElement("input"); turnInput.type = "hidden"; turnForm.appendChild(turnInput); turnInput.name = name; turnInput.value = value; } //3 提交 turnForm.action=url; turnForm.method = "post"; turnForm.submit(); }</pre> <p>   结果要加上 13行 <span style="color: #ff0000;">alert(allUrl);</span><br>的那一句才能正常执行,否则就报找不到action的错误。 太神奇了。求教。</p>

jsp中的中文数据传到mysql数据库中全部变成问号

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>添加学生</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> </head> <body> <form action="StudentAction_add" method="post"> 学号:<input type="text" name="student.snumber" /><br> 姓名:<input type="text" name="student.sname" /><br> 性别:<input type="text" name="student.sex" /><br> 班级:<input type="text" name="student.sclass" /><br> 密码;<input type="text" name="student.spassword" /> <input type="submit" value="提交" /> </form> </body> </html> ``` ```<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- #hibernate.dialect org.hibernate.dialect.MySQLDialect #hibernate.dialect org.hibernate.dialect.MySQLInnoDBDialect #hibernate.dialect org.hibernate.dialect.MySQLMyISAMDialect #hibernate.connection.driver_class com.mysql.jdbc.Driver #hibernate.connection.url jdbc:mysql:///test #hibernate.connection.username gavin #hibernate.connection.password --> <!-- 数据库驱动 --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <!-- 数据库url --> <property name="hibernate.connection.url">jdbc:mysql:///studentmanager</property> <!-- 数据库连接用户名 --> <property name="hibernate.connection.username">root</property> <!-- 数据库连接密码 --> <property name="hibernate.connection.password">123456</property> <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property> <!-- #hibernate.show_sql true #hibernate.format_sql true --> <!-- 将hibernate生成的sql语句打印到控制台 --> <property name="hibernate.show_sql">true</property> <!-- 将hibernate生成的sql语句格式化(语法缩进) --> <property name="hibernate.format_sql">true</property> <!-- ## auto schema export 自动导出表结构. 自动建表 #hibernate.hbm2ddl.auto create 自动建表.每次框架运行都会创建新的表.以前表将会被覆盖,表数据会丢失.(开发环境中测试使用) #hibernate.hbm2ddl.auto create-drop 自动建表.每次框架运行结束都会将所有表删除.(开发环境中测试使用) #hibernate.hbm2ddl.auto update(推荐使用) 自动生成表.如果已经存在不会再生成.如果表有变动.自动更新表(不会删除任何数据). #hibernate.hbm2ddl.auto validate 校验.不自动生成表.每次启动会校验数据库中表是否正确.校验失败. --> <property name="hibernate.hbm2ddl.auto">update</property> <!--可重复读--> <property name="hibernate.connection.isolation">4</property> <!-- 指定session与当前线程绑定 --> <property name="hibernate.current_session_context_class">thread</property> ``` ```

关于iOS POST上传文件

恩 是这样的 后台的上传需要账号密码验证,具体表单如下 ``` < form enctype="multipart/form-data" action="http://Xxxxxxxxxx.com/xxxxxxxxx" method="POST"> 账号:<input type="text" name="FromUserName" value=""> <br> 密码:<input type="text" name="password" value=""> <br> 文件:<input type="file" name="uploadFile" > <br> <input type="submit" value="上传文件"> </ form> ``` 请问要如何封装这个请求?

如何将web输入框内输入的值保存到变量中

``` <html> <head> <title>My JSP 'ManagerLogin.jsp' starting page</title> </head> <body> <center> <font size="5">管理员登录!</font> <br> <!-- <form action="demo_form.asp"> --> <form action="Manager.jsp">   用户名: <input type="text" name="user"><br>   密码: <input type="text" name="pass"><br>   <input type="submit" value="登录"> </form> </center> </body> </html> ``` 如何修改才能用string类型的变量保存输入的username和password?

java web 图片上传控制台不报错但文件传不出去

public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //得到上传文件的保存目录,将上传的文件存放于WEB-INF目录下,不允许外界直接访问,保证上传文件的安全 String savePath = this.getServletContext().getRealPath("/WEB-INF/upload"); File file = new File(savePath); //判断上传文件的保存目录是否存在 if (!file.exists() && !file.isDirectory()) { System.out.println(savePath+"目录不存在,需要创建"); //创建目录 file.mkdir(); } //消息提示 String message = ""; try{ //使用Apache文件上传组件处理文件上传步骤: //1、创建一个DiskFileItemFactory工厂 DiskFileItemFactory factory = new DiskFileItemFactory(); //2、创建一个文件上传解析器 ServletFileUpload upload = new ServletFileUpload(factory); //解决上传文件名的中文乱码 upload.setHeaderEncoding("UTF-8"); //3、判断提交上来的数据是否是上传表单的数据 if(!ServletFileUpload.isMultipartContent(request)){ //按照传统方式获取数据 return; } //4、使用ServletFileUpload解析器解析上传数据,解析结果返回的是一个List<FileItem>集合,每一个FileItem对应一个Form表单的输入项 List<FileItem> list = upload.parseRequest(request); for(FileItem item : list){ //如果fileitem中封装的是普通输入项的数据 if(item.isFormField()){ String name = item.getFieldName(); //解决普通输入项的数据的中文乱码问题 String value = item.getString("UTF-8"); //value = new String(value.getBytes("iso8859-1"),"UTF-8"); System.out.println(name + "=" + value); }else{//如果fileitem中封装的是上传文件 //得到上传的文件名称, String filename = item.getName(); System.out.println(filename); if(filename==null || filename.trim().equals("")){ continue; } //注意:不同的浏览器提交的文件名是不一样的,有些浏览器提交上来的文件名是带有路径的,如: c:\a\b\1.txt,而有些只是单纯的文件名,如:1.txt //处理获取到的上传文件的文件名的路径部分,只保留文件名部分 filename = filename.substring(filename.lastIndexOf("\\")+1); //获取item中的上传文件的输入流 InputStream in = item.getInputStream(); //创建一个文件输出流 FileOutputStream out = new FileOutputStream(savePath + "\\" + filename); //创建一个缓冲区 byte buffer[] = new byte[1024]; //判断输入流中的数据是否已经读完的标识 int len = 0; //循环将输入流读入到缓冲区当中,(len=in.read(buffer))>0就表示in里面还有数据 while((len=in.read(buffer))>0){ //使用FileOutputStream输出流将缓冲区的数据写入到指定的目录(savePath + "\\" + filename)当中 out.write(buffer, 0, len); } //关闭输入流 in.close(); //关闭输出流 out.close(); //删除处理文件上传时生成的临时文件 item.delete(); message = "文件上传成功!"; } } }catch (Exception e) { message= "文件上传失败!"; e.printStackTrace(); } request.setAttribute("message",message); request.getRequestDispatcher("/message.jsp").forward(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } } <form action="${pageContext.request.contextPath}../UploadHandleServlet" enctype="multipart/form-data" method="post"> <input type="submit" value="提交"> </form> </body> </html> <body> ${message} </body> </html> > 控制台不报错 提示2http://lenovo-pc:8080/Two../UploadHandleServlet Failed to load resource: the server responded with a status of 404 (Not Found) ``` ``` ``` ``` ``` ```

Ext 类继承的问题

我写了一个公共window类 主要作用是封装添加、修改员工的作用 已经实现 但是还有些小问题 1。如何声明内部变量 2。初始化数据如何该怎么写在类里面 而不需要外部调用才能初始化 代码如下: [code="java"] //用于智能提示显示 ///<reference path='JS/vswd-ext_2.2.js' /> /* 人员编辑,添加公用页面类 */ Ext.ux.EmployeeEditWindow = function(config){ //窗体隐藏属性 员工ID 新增为0 this.EmployeeEditWindow_ID = '-1'; //提交按钮的事件 this.EmployeeEidtWindow_SubmitFun = config.EmployeeEidtWindow_FunSubmit; //窗口类型 'Add','Edit' this.EmployeeEditWindow_WindowType = config.EmployeeEditWindow_WindosType; //初始化数据 this.EmployeeEditWindow_InitData = config.EmployeeEditWindow_InitData; //提交完毕后 需要刷新的storedata this.EmployeeEditWindow_RefreshStore = config.EmployeeEditWindow_RefreshStore; Ext.ux.EmployeeEditWindow.superclass.constructor.call(this,config); } Ext.extend(Ext.ux.EmployeeEditWindow,Ext.Window,{ labelSeparator : ': ', buttonAlign : 'center', plain: true, resizable: false, height: 220, width: 600, modal : true, //************************************显示编辑页面<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< initFormPanel:function(){ //-->页面 var Employee_ShowEmployeeForm_OKButton = new Ext.Button({ name : 'Employee_ShowEmployeeForm_OKButton', text : '提 交', minWidth : 100 }); var Employee_ShowEmployeeForm_CancelButton = new Ext.Button({ name : 'Employee_ShowEmployeeForm_CancelButton', text : '取 消', minWidth : 100 }); var Employee_ShowEmployeeForm_CName = new Ext.form.TextField({ name : 'CName', fieldLabel : '<span style="color:red">姓 名</span>', allowBlank : false, width : 150 }); var Employee_ShowEmployeeForm_EName = new Ext.form.TextField({ name : 'EName', fieldLabel : '英 文 名', width : 150 }); var Employee_ShowEmployeeForm_Password = new Ext.form.TextField({ name : 'Password', inputType : 'password', fieldLabel : '<span style="color:red">密 码</span>', allowBlank : false, width : 150 }); var Employee_ShowEmployeeForm_RepeatPassword = new Ext.form.TextField({ name : 'RepeatPassword', inputType : 'password', vtype:'password', fieldLabel : '<span style="color:red">重复密码</span>', allowBlank : false, width : 150, vtype:'password', vtypeText:"两次密码不一致!", confirmTo:Employee_ShowEmployeeForm_Password.getId() }); var Employee_ShowEmployeeForm_PhoneCall = new Ext.form.TextField({ name : 'PhoneCall', fieldLabel : '座 机', width : 150 }); var Employee_ShowEmployeeForm_MobileNo = new Ext.form.TextField({ name : 'MobileNo', fieldLabel : '手 机', width : 150 }); var Employee_ShowEmployeeForm_Birthday = new Ext.form.DateField({ name : 'Birthday', fieldLabel : '生 日', width : 150 }); var Employee_ShowEmployeeForm_Department = GetDepartmentTree('所属部门','DepartmentID'); var Employee_ShowEmployeeForm_Sex = GetDictionaryByCategoryID(1,'性 别',true,'SexID'); Employee_ShowEmployeeForm_Sex.width = 150; var Employee_ShowEmployeeForm_Duty = GetDictionaryByCategoryID(5,'职 务',true,'DutyID'); Employee_ShowEmployeeForm_Duty.width = 150; return new Ext.form.FormPanel({ name : 'Employee_ShowEmployeeForm_Panel', frame : true, border : false, labelAlgin:'right', modal : true, items : [ {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_CName ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_EName ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Password ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_RepeatPassword ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_MobileNo ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_PhoneCall ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Birthday ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Department ]} ]}, {layout:'column',border:false,items:[ {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Sex ]}, {columnWidth:.5,layout:'form',border:false,items:[ Employee_ShowEmployeeForm_Duty ]} ]} ] }); }, //************************************提交按钮事件<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< AppendButtonDell:function(){ if (this.fp.form.isValid()){ this.fp.form.doAction('submit', { url : 'JSON/System/Employee.aspx', mothed:'POST', waitMsg:'正在提交。。。', params : {FunctionName : 'Sys_Employee_AddEmployee'}, success : function(form, action){ var json = action.result.success; if (json){ Ext.Msg.alert('系统提示','新职员数据成功!'); this.fp.form.reset(); if (this.EmployeeEditWindow_RefreshStore){ this.EmployeeEditWindow_RefreshStore.reload(); } } else{ Ext.Msg.alert('系统提示','数据提交失败,请重试!'); } }.createDelegate(this), failure : function(form, action){ switch (action.failureType){ case Ext.form.Action.CLIENT_INVALID: Ext.Msg.alert("错误", "提交的表单数据无效,请检查!"); break; case Ext.form.Action.CONNECT_FAILURE: Ext.Msg.alert("错误", "服务器连接失败,请稍后再试!"); break; case Ext.form.Action.SERVER_INVALID: Ext.Msg.alert("错误", "提交服务器出错,请联系管理员!"); } }.createDelegate(this) }); } else { Ext.Msg.alert('系统提示','有必填项没有填写或者两次密码不一致,请检查!'); }; }, //************************************初始化页面事件<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< InitData:function(){ if (this.EmployeeEditWindow_WindowType == 'add'){ return; }; if (this.EmployeeEditWindow_InitData[0]){ if (this.fp){ this.fp.form.loadRecord(this.EmployeeEditWindow_InitData[0]); } } this.EmployeeEditWindow_ID = this.EmployeeEditWindow_InitData[0].get('ID'); }, //************************************取消按钮事件<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< CancelButtonDell:function(){ if (this){ this.close(); } }, //************************************初始化界面<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< initComponent : function(){ Ext.ux.EmployeeEditWindow.superclass.initComponent.call(this); this.fp = this.initFormPanel(); this.add(this.fp); this.addButton('取 消',this.CancelButtonDell,this); this.addButton('提 交',this.AppendButtonDell,this); if (this.EmployeeEditWindow_WindowType == 'add'){ this.title = '添加员工' } else if (this.EmployeeEditWindow_WindowType == 'edit'){ this.title = '修改员工' }; } //************************************初始化界面<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< }) [/code] [b]问题补充:[/b] 我修改成这个样子 [code="java"] Ext.ux.EmployeeEditWindow = function(config){ //窗体隐藏属性 员工ID 新增为0 this.EmployeeEditWindow_ID = '-1'; //提交按钮的事件 this.EmployeeEidtWindow_SubmitFun = config.EmployeeEidtWindow_FunSubmit; //窗口类型 'Add','Edit' this.EmployeeEditWindow_WindowType = config.EmployeeEditWindow_WindosType; //初始化数据 this.EmployeeEditWindow_InitData = config.EmployeeEditWindow_InitData; //提交完毕后 需要刷新的storedata this.EmployeeEditWindow_RefreshStore = config.EmployeeEditWindow_RefreshStore; var sss = 'dddd'; Ext.ux.EmployeeEditWindow.superclass.constructor.call(this,config); } [/code] 但是在下面 Ext.extend(Ext.ux.EmployeeEditWindow,Ext.Window,{ 。。。。 } 好像无法访问到sss 应该如何访问sss呢? 另外 我页面中有几个combobox 但是我发现点击修改后 字典没有翻译成为数据 为什么?应该怎么处理呢?谢谢

一组动态文件域和文本框的获取问题

我现在在用JSP做一个程序,涉及到多文件上传,我写了一个文件上传的页面,用JS动态增加表单中的文件域和文本框,但是不知道该如何在另一个页面获取他们的值,现把表单页贴出来,麻烦大家帮忙看一下啊。谢谢了哦。 <html> <head> </head> <body> <form action="testDealMore.jsp" method="post" enctype="multipart/form-data" name="form1"> <TABLE > <TR > <TD >语音文件: </td> <td id="file" > <input type="file" name="file1"> 答 案: <input type="text" name="key1" /> <input type="button" value="增加" onClick="AddMore()"> </td> </tr> <input type="submit" name="Submit" value="上传"> </table> </form> <script type="text/javascript"> var i = 1; function AddMore(){ i++; var more = document.getElementById("file"); var br = document.createElement("br"); var input = document.createElement("input"); var text = document.createElement("input"); var button = document.createElement("input"); input.type = "file"; input.name = "file" + i; text.type = "text"; text.name = "key" + i; button.type = "button"; button.value = "删除"; more.appendChild(br); more.appendChild(input); more.appendChild(text); more.appendChild(button); button.onclick = function(){ more.removeChild(br); more.removeChild(input); more.removeChild(text); more.removeChild(button); }; } </script> </body> </html> [b]问题补充:[/b] 我是个新手,原来没用过隐藏域,可不可以麻烦再具体点。 [b]问题补充:[/b] 是指在隐藏域中把这些都封装成数组,然后传过去吗 [b]问题补充:[/b] 哦 明白了 回去做实验 谢谢了啊

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

Vue + Spring Boot 项目实战(十九):Web 项目优化解决方案

快来一起探索如何打脸我们的破项目,兄弟姐妹们把害怕打在公屏上!

你连存活到JDK8中著名的Bug都不知道,我怎么敢给你加薪

CopyOnWriteArrayList.java和ArrayList.java,这2个类的构造函数,注释中有一句话 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 public ArrayList(Collection&lt;? ...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解!

CSDN:因博主近期注重写专栏文章(已超过150篇),订阅博主专栏人数在突增,近期很有可能提高专栏价格(已订阅的不受影响),提前声明,敬请理解! 目录 博客声明 大数据了解博主粉丝 博主的粉丝群体画像 粉丝群体性别比例、年龄分布 粉丝群体学历分布、职业分布、行业分布 国内、国外粉丝群体地域分布 博主的近期访问每日增量、粉丝每日增量 博客声明 因近期博主写专栏的文章越来越多,也越来越精细,逐步优化文章。因此,最近一段时间,订阅博主专栏的人数增长也非常快,并且专栏价

一个HashMap跟面试官扯了半个小时

一个HashMap能跟面试官扯上半个小时 关注 安琪拉的博客 1.回复面试领取面试资料 2.回复书籍领取技术电子书 3.回复交流领取技术电子书 前言 HashMap应该算是Java后端工程师面试的必问题,因为其中的知识点太多,很适合用来考察面试者的Java基础。 开场 面试官: 你先自我介绍一下吧! 安琪拉: 我是安琪拉,草丛三婊之一,最强中单(钟馗不服)!哦,不对,串场了,我是**,目...

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

记录下入职中软一个月(外包华为)

我在年前从上一家公司离职,没想到过年期间疫情爆发,我也被困在家里,在家呆着的日子让人很焦躁,于是我疯狂的投简历,看面试题,希望可以进大公司去看看。 我也有幸面试了我觉得还挺大的公司的(虽然不是bat之类的大厂,但是作为一名二本计算机专业刚毕业的大学生bat那些大厂我连投简历的勇气都没有),最后选择了中软,我知道这是一家外包公司,待遇各方面甚至不如我的上一家公司,但是对我而言这可是外包华为,能...

面试:第十六章:Java中级开发

HashMap底层实现原理,红黑树,B+树,B树的结构原理 Spring的AOP和IOC是什么?它们常见的使用场景有哪些?Spring事务,事务的属性,传播行为,数据库隔离级别 Spring和SpringMVC,MyBatis以及SpringBoot的注解分别有哪些?SpringMVC的工作原理,SpringBoot框架的优点,MyBatis框架的优点 SpringCould组件有哪些,他们...

培训班出来的人后来都怎么样了?(二)

接着上回说,培训班学习生涯结束了。后面每天就是无休止的背面试题,不是没有头脑的背,培训公司还是有方法的,现在回想当时背的面试题好像都用上了,也被问到了。回头找找面试题,当时都是打印下来天天看,天天背。 不理解呢也要背,面试造飞机,上班拧螺丝。班里的同学开始四处投简历面试了,很快就有面试成功的,刚开始一个,然后越来越多。不知道是什么原因,尝到胜利果实的童鞋,不满足于自己通过的公司,嫌薪水要少了,选择...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

工作八年,月薪60K,裸辞两个月,投简历投到怀疑人生!

近日,有网友在某职场社交平台吐槽,自己裸辞两个月了,但是找工作却让自己的心态都要崩溃了,全部无果,不是已查看无回音,就是已查看不符合。 “工作八年,两年一跳,裸辞两个月了,之前月薪60K,最近找工作找的心态崩了!所有招聘工具都用了,全部无果,不是已查看无回音,就是已查看不符合。进头条,滴滴之类的大厂很难吗???!!!投简历投的开始怀疑人生了!希望 可以收到大厂offer” 先来看看网...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

都前后端分离了,咱就别做页面跳转了!统统 JSON 交互

文章目录1. 无状态登录1.1 什么是有状态1.2 什么是无状态1.3 如何实现无状态1.4 各自优缺点2. 登录交互2.1 前后端分离的数据交互2.2 登录成功2.3 登录失败3. 未认证处理方案4. 注销登录 这是本系列的第四篇,有小伙伴找不到之前文章,松哥给大家列一个索引出来: 挖一个大坑,Spring Security 开搞! 松哥手把手带你入门 Spring Security,别再问密...

97年世界黑客编程大赛冠军作品(大小仅为16KB),惊艳世界的编程巨作

这是世界编程大赛第一名作品(97年Mekka ’97 4K Intro比赛)汇编语言所写。 整个文件只有4095个字节, 大小仅仅为16KB! 不仅实现了3D动画的效果!还有一段震撼人心的背景音乐!!! 内容无法以言语形容,实在太强大! 下面是代码,具体操作看最后! @echo off more +1 %~s0|debug e100 33 f6 bf 0 20 b5 10 f3 a5...

程序员是做全栈工程师好?还是专注一个领域好?

昨天,有位大一的同学私信我,说他要做全栈工程师。 我一听,这不害了孩子么,必须制止啊。 谁知,讲到最后,更确定了他做全栈程序员的梦想。 但凡做全栈工程师的,要么很惨,要么很牛! 但凡很牛的,绝不是一开始就是做全栈的! 全栈工程师听起来好听,但绝没有你想象的那么简单。 今天听我来给你唠,记得帮我点赞哦。 一、全栈工程师的职责 如果你学习编程的目的只是玩玩,那随意,想怎么学怎么学。...

不要再到处使用 === 了

我们知道现在的开发人员都使用 === 来代替 ==,为什么呢?我在网上看到的大多数教程都认为,要预测 JavaScript 强制转换是如何工作这太复杂了,因此建议总是使用===。这些都...

什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!

A站 AcFun弹幕视频网,简称“A站”,成立于2007年6月,取意于Anime Comic Fun,是中国大陆第一家弹幕视频网站。A站以视频为载体,逐步发展出基于原生内容二次创作的完整生态,拥有高质量互动弹幕,是中国弹幕文化的发源地;拥有大量超粘性的用户群体,产生输出了金坷垃、鬼畜全明星、我的滑板鞋、小苹果等大量网络流行文化,也是中国二次元文化的发源地。 B站 全称“哔哩哔哩(bilibili...

十个摸鱼,哦,不对,是炫酷(可以玩一整天)的网站!!!

文章目录前言正文**1、Kaspersky Cyberthreat real-time map****2、Finding Home****3、Silk – Interactive Generative Art****4、Liquid Particles 3D****5、WINDOWS93****6、Staggering Beauty****7、Ostagram图片生成器网址****8、全历史网址*...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

用了这个 IDE 插件,5分钟解决前后端联调!

点击上方蓝色“程序猿DD”,选择“设为星标”回复“资源”获取独家整理的学习资料!作者 |李海庆我是一个 Web 开发前端工程师,受到疫情影响,今天是我在家办公的第78天。开发了两周,...

大厂的 404 页面都长啥样?最后一个笑了...

每天浏览各大网站,难免会碰到404页面啊。你注意过404页面么?猿妹搜罗来了下面这些知名网站的404页面,以供大家欣赏,看看哪个网站更有创意: 正在上传…重新上传取消 腾讯 正在上传…重新上传取消 网易 淘宝 百度 新浪微博 正在上传…重新上传取消 新浪 京东 优酷 腾讯视频 搜...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

Java14 新特性解读

Java14 已于 2020 年 3 月 17 号发布,官方特性解读在这里:https://openjdk.java.net/projects/jdk/14/以下是个人对于特性的中文式...

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

前端还能这么玩?(女朋友生日,用前端写了一个好玩的送给了她,高兴坏了)

爬虫(101)爬点重口味的

小弟最近在学校无聊的很哪,浏览网页突然看到一张图片,都快流鼻血。。。然后小弟冥思苦想,得干一点有趣的事情python 爬虫库安装https://s.taobao.com/api?_ks...

工作两年简历写成这样,谁要你呀!

作者:小傅哥 博客:https://bugstack.cn 沉淀、分享、成长,让自己和他人都能有所收获! 一、前言 最近有伙伴问小傅哥,我的简历怎么投递了都没有反应,心里慌的很呀。 工作两年了目前的公司没有什么大项目,整天的维护别人的代码,有坑也不让重构,都烦死了。荒废我一身技能无处施展,投递的简历也没人看。我是不动物园里的猩猩,狒狒了! 我要加班,我要996,我要疯狂编码,求给我个机会… ...

相关热词 c# 开发接口 c# 中方法上面的限制 c# java 时间戳 c#单元测试入门 c# 数组转化成文本 c#实体类主外键关系设置 c# 子函数 局部 c#窗口位置设置 c# list 查询 c# 事件 执行顺序
立即提问
相关内容推荐