通过button将form表单的数据提交到action层
form表单中不需要写action的路径,需要给form表单一个唯一的id,将你要提交的信息的表单中的标签name="action中的javabean对象.javabean属性"。给button按钮添加一个onclick()点击事件,并实现该点击事件,在该onclick()方法中通过ajax将form表单中的数据提交给action层
JSP页面中的代码:
1 <form id="handleform">
<!-- 根据学生id修改学生信息 -->
<input type="hidden" name="student.stuid"/><!-- 隐藏学生id -->
<div class="input-group el_modellist" role="toolbar">
<span class="el_spans">要修改的班级:</span>
<select class="selectpicker form-control" name="student.className" id="fmchechunit" title="请选择">
<option value="0">--请选择班级--</option>
<option value="1">软件一班</option>
<option value="2">软件二班</option>
</select>
</div>
<span class="el_spans">学生姓名:</span>
<input type="text" id="student.name"/>
<div class="input-group el_modellist" role="toolbar">
<span class="el_spans">学生详细信息:</span>
<textarea id="studentMsg" class="form-control texta" rows="10" name="student.msg"></textarea>
</div> <div class="modal-footer">
<button id="submitButton" onclick="saveButton()" type="button" class="btn btn-primary">更新</button>
</div>
</form>
<script type="text/javascript">
function saveButton(){
//通过ajax异步将数据发送给action层
$.ajax({
url : '${pageContext.request.contextPath}/stu/stu_upstudent.action',//这里写上你的action路径
data : $("#handleform").serialize(),//将你在form表单上提交的数据序列化
type : 'POST', //提交方式
dataType : 'json', //提交的数据类型
async:true, //是否异步
success : function(data) {//这是个回调函数 data表示从action中传过来的json数据
//弹出从action层传过来的json格式的数据(用来显示是否更新成功)
alert(data.result);
}
});
}
</script>
action层中的代码:
1 @Controller
@Scope("prototype")
// 控制层,多例模式
public class DangerAction extends ActionSupport { private Student student;
public void setStudent(Student student){
this.student = student;
}
public Student getStudent(){
return this.student;
} @Resource
private StudentService studentService;
public StudentService getStudentService() {
return studentService;
}
public void setStudentService(StudentService studentService) {
this.studentService = studentService;
}
public String updateStudent throws Exception{ boolean flag = studentService.update(student);
HttpServletResponse response = ServletActionContext.getResponse(); //通过json对象将修改反馈信息响应给jsp
JSONObject json = new JSONObject();
if (flag) {
System.out.println(flag);
json.put("result", "修改成功");
} else {
System.out.println(flag);
json.put("result", "修改失败");
}
System.out.println(json.toString());
response.setContentType("text/html;charset=UTF-8");
response.getWriter().write(json.toString());
return null;//如果不需要跳转页面就写上null,如果要跳转页面就自己另外写上
}
}
javabean代码:
1 public class Student{
private int stuid;
private int className;
private int name;
private String studentMsg;
public int getStuid() {
return stuid;
}
public void setStuid(int stuid) {
this.stuid = stuid;
}
public int getClassName() {
return className;
}
public void setClassName(int className) {
this.className = className;
}
public int getName() {
return name;
}
public void setName(int name) {
this.name = name;
}
public String getStudentMsg() {
return studentMsg;
}
public void setStudentMsg(String studentMsg) {
this.studentMsg = studentMsg;
} }
通过button将form表单的数据提交到action层的更多相关文章
- form表单Get方式提交时,action中带参数传递不了
<form action="getPostServlet/getPost.do?param4=param4" method="get"> <i ...
- django做form表单的数据验证
我们之前写的代码都没有对前端input框输入的数据做验证,我们今天来看下,如果做form表单的数据的验证 在views文件做验证 首先用文字描述一下流程 1.在views文件中导入forms模块 2. ...
- jquery序列化form表单使用ajax提交后处理返回的json数据
1.返回json字符串: /** 将一个字符串输出到浏览器 */ protected void writeJson(String json) { PrintWriter pw = null; try ...
- form表单序列化数据之后,追加额外数据
form表单序列化数据之后追加额外数据多使用在js中,下面是追加额外数据的代码: <span style="font-size:18px;">$.param({'inv ...
- 防止表单提交时刷新页面-阻止form表单的默认提交行为
最近在写 ajax 提交的时候遇到一个问题,在执行 ajax 提交之后,浏览器页面自动刷新了,主要是没有 由于form 表单的默认提交行为.一下是几种阻止 form 表单默认提交行为的方式. 1.使用 ...
- C# 模拟提交 Form表单的数据
用 HttpWebRequest Post方法模拟提交Form表单数据时,需要设置 ContentType 为 "application/x-www-form-urlencoded" ...
- Laravel Form 表单的数据校验
例如,要使用手机号加验证码的方式提供登录网站的功能,那么在处理前端提交的 form 表单时,就不得不对提交的手机号及验证码做基本的数据校验. 手写规则,非常浪费时间.使用 laravel 内置的 va ...
- 浏览器原生 form 表单POST 数据的两种方式
我们在提交表单的时候,form表单参数中会有一个enctype的参数.enctype指定了HTTP请求的Content-Type. 常用有两种:application/x-www-form-urlen ...
- JS form 表单收集 数据 formSerialize
做后台系统的时候通常会用到form表单来做数据采集:每次一个字段一个字段的去收集就会很麻烦,网站也有form.js插件可以进行表单收集,并封装成一个对象,通过ajax方法传到后台:现在介绍一种直觉采集 ...
随机推荐
- docker 个人遇到问题日志记录
system: openSUSE Leap 42.3 在openSUSE中可直接运行" sudo zypper in docker"进行安装docker-ce wakasann@l ...
- WJMZBMR打osu! / Easy
WJMZBMR打osu! / Easy 有一个由o,x,?组成的长度为n的序列,?等概率变为o,x,定义序列权值为连续o的长度o的平方之和,询问权值的期望, 解 注意到权值不是简单的累加关系,存在平方 ...
- python中字符串的处理总结
在爬取新浪财经7*24直播中, 遇到了Unicode编码中文转utf-8的问题, 采用如下代码可以实现转化 >>> a='\\u76d1\\u7ba1\\u5bf929' >& ...
- LUOGU P1291 [SHOI2002]百事世界杯之旅 (期望dp)
传送门 解题思路 期望$dp$.因为这个是期望步数,所以要倒着推.那么这道题就变得一脸可做了,设$f[i]$表示还有$i$张牌没有收集的期望,那么考虑再抽一张,有$(n-i)/n$的概率抽到抽过的牌, ...
- 19-11-08-Night
再咕咕咕会被爆捶吗??? ZJ: 喜闻乐见: 27 Miemeng 60 01:59:43 100 01:59:44 0 01:59:44 160 01:59:44 最水的$T1$挂了???? $T2 ...
- samba初级使用记录
首先安利一下什么是samba: Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在 ...
- 《DSP using MATLAB》Problem 8.15
代码: %% ------------------------------------------------------------------------ %% Output Info about ...
- vue-cli的使用指南
vue-cli 2.0 安装vue-cli npm install -g vue-cli 创建一个项目模板 vue init <template-name> <project-nam ...
- <每日一题>题目28:生成随机的测验试卷(单选题)
#项目:生成随机的测验试卷文件 import random #资料库 capitals = {'北京市':'京','上海市':'沪','天津市':'津','重庆市':'渝','河北省':'冀','山西 ...
- 【LGP4705】玩游戏
题目 显然这个题的期望就是逗你玩的,我们算出来总贡献除以\(nm\)就好了 设\(ans_t=\sum_{i=1}^n\sum_{j=1}^n(a_i+b_j)^t\) 二项式定理展开一下 \[ans ...