4

我在数据库中有一张桌子:

NOTICE(NUM,TITLE,CONTENT)

我在 ASP 中使用 Repeater Control 来显示 DB 中的所有通知,例如:

+----------+------------+|
|title1        (readmore)|
|
|title2        (readmore)|
|
|title3        (readmore)|
......
+------------------------+

我想要的是:我阅读了"title"然后我点击了(readmore),新页面将打开(显示详细的通知),其中包含该通知的“内容”。如何在num不显示通知的情况下分配通知以在下一页定义通知?

我只是将标题分配给 a 的属性 Text,Label ID="TITLE"因为我想显示每个通知的标题。

我想在此页面中显示的所有信息是:titlereadmore(指向下一页的链接)。所以我不知道如何分配 num

我的asp页面:notice.asp

<asp:Repeater ID="RepDetails" runat="server" >
<HeaderTemplate>
<table style="  width:565px" cellpadding="0" class="borber">
</HeaderTemplate>
<ItemTemplate>
<tr>
<td>
<asp:Label ID="Title" runat="server" Text='<%#Eval("TITLE") %>'  /> 
</td>
<td>
    <asp:HyperLink ID="HyperLink1" runat="server" > (readmord)</asp:HyperLink>
</td>
</tr>    
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater> 

我的 C# 代码:notice.asp.cs

 private void BindRepeaterData()
    {
        string sql = "select num,title from NOTICE";
        DataTable ds = l.EXECUTEQUERYSQL(sql);
        RepDetails.DataSource = ds;
        RepDetails.DataBind();

    }

下一页:detailnotice.asp.cs

private void GetNotice()
    {
        string sql = "select * from NOTICE where num=" ;// num= the num of notice I choose in notice.asp page.
    }

如何在标签中分配一个数字而不显示它?标签控件的什么属性或者我应该使用其他控件?

希望你明白我说的话。如果没有,请问?

4

2 回答 2

3

与 Sain 基本相同,但使用 NavigateURL

<asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl='<%# Eval("NUM","~/detailpage.aspx?id={0}") %>' > (readmord)</asp:HyperLink>
于 2013-09-16T06:42:02.387 回答
2

嗨,您可以使用锚标记代替超链接按钮。您可以将查询字符串中的 num 传递给详细信息页面。

<a href='detailpage.aspx?id=<%#Eval("NUM") %>'> (readmord)</a>

在详细信息页面上,您可以获取查询字符串值并从数据库中获取详细信息。

   int myKey = 0;
    if (!string.IsNullOrEmpty(Request.QueryString["id"]))
    {
        myKey = int.Parse(Request.QueryString["id"]);
        // Use myKey to retrieve record from database
    }
于 2013-09-16T06:36:44.063 回答