我使用下面的代码来查看图片1之类的结果,但结果如图2所示。应该怎么做来解决它?
aspx代码:
<asp:datalist id="dtlUrun" runat="server" RepeatDirection="Horizontal">
<ItemTemplate>
<table class="dtlTable">
<tr>
<td class="dtlHeader"></td>
<td class="dtlHeader"><%#DataBinder.Eval(Container.DataItem, "DS_MAMUL")%></td>
</tr>
<asp:DataList ID="dtlBayi" Runat="server">
<ItemTemplate>
<tr>
<td class="dtlColumn"><%#DataBinder.Eval(Container.DataItem, "DS_BAYI")%></td>
<td class="dtlColumn"><%#DataBinder.Eval(Container.DataItem, "MT_MIKTAR")%></td>
</tr>
</ItemTemplate>
</asp:DataList>
</table>
</ItemTemplate>
</asp:datalist>
风格:
<style type="text/css">
.dtlTable {
BORDER-RIGHT: #000000 1px solid;
BORDER-TOP: #000000 1px solid;
BORDER-LEFT: #000000 1px solid;
BORDER-BOTTOM: #000000 1px solid;
BORDER-COLLAPSE: collapse;
BACKGROUND-COLOR: #fafafa;
border-spacing: 0px;
}
.dtlColumn {
PADDING-RIGHT: 0px;
PADDING-LEFT: 8px;
FONT-WEIGHT: normal;
FONT-SIZE: 0.7em;
PADDING-BOTTOM: 4px;
COLOR: #404040;
PADDING-TOP: 4px;
BORDER-BOTTOM: #6699cc 1px dotted;
FONT-FAMILY: Verdana, sans-serif, Arial;
BACKGROUND-COLOR: #fafafa;
TEXT-ALIGN: left;
}
.dtlHeader {
BORDER-RIGHT: #000000 1px solid;
BORDER-TOP: #000000 1px solid;
FONT-WEIGHT: bold;
FONT-SIZE: 12px;
BORDER-LEFT: #000000 1px solid;
COLOR: #404040;
BORDER-BOTTOM: #000000 1px solid;
FONT-FAMILY: Verdana;
BACKGROUND-COLOR: #99cccc;
}
</script>
vb代码:
Private Sub bindGrid()
Dim objUrun As New caynet_class.cls_LU_MAMUL
Me.dtlUrun.DataSource = objUrun.GetBy_MAMUL_ARALIGI(Session("CAY_NEVILERI_SATIS_KRITER")("MAMUL_NO1"), Session("CAY_NEVILERI_SATIS_KRITER")("MAMUL_NO2"))
Me.dtlUrun.DataBind()
End Sub
Private Sub dtlUrun_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataListItemEventArgs) Handles dtlUrun.ItemDataBound
If Not e.Item.ItemIndex = -1 Then
Dim mamulNo As Integer = CType(DataBinder.Eval(e.Item.DataItem, "MAMUL_NO"), Integer)
CType(e.Item.FindControl("dtlBayi"), DataList).DataSource = caynet_class.cls_RAPOR_SATIS.Get_Cay_Nevileri_Satis2(mamulNo)
CType(e.Item.FindControl("dtlBayi"), DataList).DataBind()
Session("dtlDurum") = False
End If
End Sub
图片1:http://img146.imageshack.us/my.php?image=89632085xz4.jpg
答案 0 :(得分:2)
从我在代码中可以看出,第一个数据列表与两个标题项绑定,然后在内部你有各个元素。您的模板为每个部分创建一个表,但默认情况下,表将是块级元素。我的猜测是你可以用CSS修复它,但我必须检查。我个人会这样做。
<asp:dataList id="" runat="server">
<headertemplate>
<table>
<tr>
</headertemplate>
<itemtemplate>
<td>
<!-- Your template here -->
</td>
</itemtemplate>
<footertemplate>
</tr></table>
</footertemplate>
</asp:datalist>
这实际上将两个表放在一个更大的表的单元格中,所有这些都在你的datalist中。
答案 1 :(得分:0)
标签无法在footertemplate中看到他的结束标记。你确定你的代码是真的吗?
你说:
我猜你可以用CSS修复它
请让我们用Css修复它:)