当前位置:编程学习 > JAVA >>

一点问题求教一下

请问下,,下面这个表格是ssh框架通过action从数据库中读取的



我想在点击后面选择后这门课的id就保存在了学生表中了,,并且成功后显示已经选择

这个怎么完成?? --------------------编程问答-------------------- 在发一个请求,把这门课的id保存到学生和课程关联的表中,然后刷新页面 --------------------编程问答--------------------
引用 1 楼 shixitong 的回复:
在发一个请求,把这门课的id保存到学生和课程关联的表中,然后刷新页面


现在的问题是c:forEach items="${sessionScope.list }"获取列表,,但是我获取不到每行对应的课程到action

<tr>
<th>课程号</th>
<th>课程名</th>
<th>开课学期</th>
<th>课时</th>
<th>学分</th>
<th>教师</th>
<th>操作</th>
</tr>
<c:forEach items="${sessionScope.list }" var="cour" varStatus="status">
<tr bgColor="${status.index%2==0?'#e5fee2':'#d6fdd0' }">
<td>${cour.CId}</td>
<td>${cour.CName }</td>
<td>${cour.schooltime}</td>
<td>${cour.lessontime}</td>
<td>${cour.lessonpoints }</td>
<td>${cour.tbTeacher.TName }</td>
<td><a href="StudentAction!addCourse">选择这门课</a></td>
</tr>
</c:forEach>


后台action方法

TbStudent student = (TbStudent) ServletActionContext.getRequest()
.getSession().getAttribute("stu_info");

student = dao.getStu(TbStudent.class, student.getSId());
Set<TbCourse> set = student.getTbScs();
//TbCourse cour = new TbCourseDao().getCour(TbCourse.class, course.getCId());
TbCourse cour = (TbCourse)ServletActionContext.getRequest().getSession().getAttribute("cour");
student.getTbScs().add(cour);
dao.update(student);
return "success";
--------------------编程问答-------------------- 在请求里加一个课程的id参数不行? --------------------编程问答--------------------
引用 3 楼 shixitong 的回复:
在请求里加一个课程的id参数不行?


我加了,,但是TbCourse cour = new TbCourseDao().getCour(TbCourse.class, course.getCId());用这个获取不到,,直接抛异常,,用TbCourse cour = (TbCourse)ServletActionContext.getRequest().getSession().getAttribute("cour");这个获取直接空指针 --------------------编程问答-------------------- 使用ajax
课程的id加到tr的 id 属性中.
通过监控点击得到行的 id.  js使用ajax传到后台action.
当前台收到 后台成功的标志的时候. 显示已经选择

ajax使用 jquery比较方便.简单易学.
--------------------编程问答--------------------
引用 5 楼 qiunet 的回复:
使用ajax
课程的id加到tr的 id 属性中.
通过监控点击得到行的 id.  js使用ajax传到后台action.
当前台收到 后台成功的标志的时候. 显示已经选择

ajax使用 jquery比较方便.简单易学.


谢谢提醒,,我试试,, --------------------编程问答-------------------- 使用jquery ajax很容易搞定。
1.从数据库中获取了数据列表后,在遍历并显示到前端时,将id“影藏”保存到某一属性;
比如:
<tr><td>课程号</td><td>课程名</td><td>开课学期</td><td>课时</td><td>学分</td><td>老师</td><td>操作</td></tr>
<tr><td>1</td><td>网络安全</td><td>2</td><td>30</td><td>5</td><td>刘老师</td><td onclick='checkItem(1)'>选择</td></tr>
<tr><td>2</td><td>linux基础</td><td>2</td><td>20</td><td>2</td><td>刘老师</td><td onclick='checkItem(2)'>选择</td></tr>

2.在js中实现方法:
function checkItem(id){
    ......
}

3.当点击“选择”时,通过ajax调用action,将对应的id插入到学生表。 --------------------编程问答--------------------
引用 7 楼 huangxueyong86 的回复:
使用jquery ajax很容易搞定。
1.从数据库中获取了数据列表后,在遍历并显示到前端时,将id“影藏”保存到某一属性;
比如:
<tr><td>课程号</td><td>课程名</td><td>开课学期</td><td>课时</td><td>学分</td><td>老师</td><td>操作</td></tr>
<tr><td>1</td><td>网络安全</t……


感谢,,现在在弄这个问题http://bbs.csdn.net/topics/390439320?page=1#post-394316965 先解决再来试试,,
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,