请问下,,下面这个表格是ssh框架通过action从数据库中读取的我想在点击后面选择后这门课的id就保存在了学生表中了,,并且成功后显示已经选择这个怎么完成??

解决方案 »

  1.   


    现在的问题是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";
      

  2.   


    我加了,,但是TbCourse cour = new TbCourseDao().getCour(TbCourse.class, course.getCId());用这个获取不到,,直接抛异常,,用TbCourse cour = (TbCourse)ServletActionContext.getRequest().getSession().getAttribute("cour");这个获取直接空指针
      

  3.   

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

  4.   

    使用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插入到学生表。
      

  5.   


    感谢,,现在在弄这个问题http://bbs.csdn.net/topics/390439320?page=1#post-394316965 先解决再来试试,,