Ajax些成绩批量录入

Posted 非非是

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ajax些成绩批量录入相关的知识,希望对你有一定的参考价值。

1.jsp,ajax的循环调用,必须要递归,否则会出错。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%
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>My JSP \'Scoreinsert.jsp\' starting page</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">
	<script type="text/javascript" src="js/jquery.js"></script>
	<!--
	<link rel="stylesheet" type="text/css" href="styles.css">
	-->

  </head>
  <script type="text/javascript">
 
function sub(i)
{ 

var a = $("table tr").eq(i).children("td").eq(0).children().val();
var b = $("table tr").eq(i).children("td").eq(0).children().eq(1).val();
var c = $("table tr").eq(i).children("td").eq(1).children().val();
var d = $("table tr").eq(i).children("td").eq(2).children().val();
var e = $("table tr").eq(i).children("td").eq(3).children().val();
aja2(a,b,c,d,e,i);
}
function aja2(a,b,c,d,e,i){

 $.ajax({
    url:\'BatchScoreSave.action\',
    type:\'POST\', //GET
    async:true,    //或false,是否异步
    data:{    
    classs:a,
    course:b,
    number:c,
    name:d,
    scores:e
    },//提交表单数据,也可以直接用data:$(\'#form\').serialize(),
    timeout:5000,    //超时时间
    dataType:\'json\',    //返回的数据格式:json/xml/html/script/jsonp/text
    success:function(data){		  
        //console.log(data);
       console.log(\'成功\');      
       if(i<$("table tr").length-1){
       i++;
       sub(i);
       
       }
    },
    error:function(xhr,textStatus){
        console.log(\'错误\');
    },
}); 


}


  </script>
  <body>
  <s:property value="classs"/>班<s:property value="course"/>成绩录入
  
  <table  cellpadding="10" border="1">
       <tr>
       <th>班级</th>
       <th>学号</th>
       <th>姓名</th>
       <th>成绩</th>
       <th>操作</th>
       </tr>    
       <s:iterator value="scorelist">    
       <tr>
       <form action="ScoreSave.action">
       <td><input type="text" name="classs" value=\'<s:property value="id.classs"/>\' size="4" readonly="readonly" style="border: 0">
       <input type="text" name="score.id.course" value=\'<s:property value="id.course"/>\' style="display:none;"></td>       
       <td><input type="text" name="score.id.number" value=\'<s:property value="id.number"/>\' size="4" readonly="readonly" style="border: 0"></td>
       <td><input type="text" name="score.id.name" value=\'<s:property value="id.name"/>\' size="4" readonly="readonly"style="border: 0"></td>
       <td><input type="text" name="score.id.score" value=\'<s:property value="id.score"/>\' size="4"style="border: 0" onkeyup="this.value=this.value.replace(/\\D/g,\'\')"></td>
       <td><input type="submit" value="保存"></td>
       </form>      
       </tr>       
       </s:iterator>    
    </table>   
   <input type="button" value="提交" onclick="sub(1)">

  </body>
</html>

 2.action,就是简单的一条数据一条数据的保存,一定有get和set,注意Spring注入不能写get,会报错。

public String BatchScoreSave() throws Exception{
		score = new Score();
		score.setId(new ScoreId());
		score.getId().setClasss(classs);
		score.getId().setCourse(course);
		score.getId().setNumber(number);
		score.getId().setName(name);
		score.getId().setScore(scores);
		mgr.Scoresave(score);
		
		return SUCCESS;
	}

 3.struts.xml

<package name="aaa" extends="json-default">

  

<action name="BatchScoreSave" class="ScoreAction" method="BatchScoreSave">
			<result name="success" type="json">
			<param name="root"></param>
			</result></action>

4.结果截图

 

data:$(\'#form\').serialize(),

以上是关于Ajax些成绩批量录入的主要内容,如果未能解决你的问题,请参考以下文章

PTA 学生成绩录入及查询 (20分)

键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件

1. 内容:学生成绩管理程序 一班有20名学生,一学期有5门课程,编写程序实现如下功能: (1) 录入每名学生

mfc学生成绩录入与查询

C语言 学生成绩管理系统

C语言 学生成绩管理系统