有两种方法:A:
前台关键代码:
<!—显示出来的内容--> <table class="table1" width="99%"> <asp:Repeater ID="repResults" runat="server" > <ItemTemplate> <tr> <td style="width: 5%"><%# Eval("studentId")%></td> <td style="width: <%=pre %>"><%# Eval("studentName")%></td> <asp:Repeater ID="repSubject" runat="server" DataSource="<%# GetSubject() %>"> <ItemTemplate> <td style="width: <%=pre %>"> <input class="res" type="text" name='<%# GetSubId(Eval("subjectId").ToString()) %>' /> </td> </ItemTemplate> </asp:Repeater> </tr> </ItemTemplate> </asp:Repeater> </table> |
后台关键代码:
//查询 protected void btnQuery_Click(object sender, EventArgs e) { if (ddlClass.SelectedValue == "0") return; IList<Student> stuList = teacherbasinan.SleStuAllByID(Convert.ToInt32(ddlClass.SelectedValue)); //根据班级获取所有的学员 repResults.DataSource = stuList; repResults.DataBind(); IList<Subject> subList = GetSubject(); //获取所有的科目 int chu = subList.Count + 2; int counts = 100 / chu; this.repTitles.DataSource = subList; //设置标题 this.repTitles.DataBind(); pre = counts.ToString() + "%"; }
public IList<Subject> GetSubject() { TestNameModel testname = testnamemanager.GetSubjectByTname(ddlTName.SelectedItem.Text); //获取考试科目 string subs = testname.SubjectIds; //获取科目id IList<Subject> subList = subjectManager.GetSubjectsBySubjectIds(subs); return subList; } |
第二种方法:
前台关键代码 :
<!--显示出来的内容--> <table class="table1" width="99%"> <asp:Repeater ID="repResults" runat="server" OnItemDataBound="repResults_ItemDataBound" > <ItemTemplate> <tr> <td style="width: 5%"><%# Eval("studentId")%></td> <td style="width: <%=pre %>"><%# Eval("studentName")%></td> <asp:Repeater ID="repSubject" runat="server"> <ItemTemplate> <td style="width: <%=pre %>"> <input class="res" type="text" name='<%# GetSubId(Eval("subjectId").ToString()) %>' /> </td> </ItemTemplate> </asp:Repeater> </tr> </ItemTemplate> </asp:Repeater> </table> |
后台关键代码:
protected void repResults_ItemDataBound(object sender, RepeaterItemEventArgs e) { if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem) { Student stu = e.Item.DataItem as Student; Repeater repSubject = e.Item.FindControl("repSubject") as Repeater; if (repSubject != null) { repSubject.DataSource = GetSubject(); repSubject.DataBind(); } } } |