我从数据库中可能查询出多条数据。.我想把这些数据都以超连接的方式显示出来,并且可以在合适的位置上..也就是简单的排版..并且点击指向a.aspx?id=''该如何实现????在线等

解决方案 »

  1.   

    使用GridView控件,添加模板列,使用Eval来绑定字段,例如:<%# Eval("field") %>
      

  2.   

    要求里就是写明了。不能用GridView
      

  3.   

    变态的要求,为什么不用gridview。
    那就for,<a href>
      

  4.   

    麻烦各位能把for循环下的代码写个MODEL给我看看吗?我真无从下笔....辛苦各位了..如果写的话是写在JS里还是直接写在后台代码里呢?我个人比较喜欢写在后台代码里。.管理起来方便
      

  5.   

    谢在后台代码里面也可以,你写个函数传出这些 for循环生成的 String ,然后在需要调用的地方 就显示就OK啦嘛
    随便提下.gridview其实功能很强大的,ASP.NET 一般尽量用它 ,还是很方便的, 如果是因为不能拖拉Datagridview的话 你也可以在后台 自己实例化一个Datagridview,啊
      

  6.   

    客户端(aspx) 在你要写东西的地方 加入 <%MYHTML%>CS端 
    public string MYHTML="你想写的任何html语句"
      

  7.   

    方式很多,比如1楼说的GirdView就是比较方便的一种方法。不过我个人比较倾向自己画HTML,这样样式可以比较灵活。举个最简单的例子,假设你的查询结果为一DataTable:objTable,其中第一列是用来显示的值,第二列是对应的链接地址,那么就可以在需要显示超链接的地方放置一个DIV(设其ID为DIV1),并标记runat="server",之后在后台代码里写:
    StringBuilder myBuilder = new StringBuilder()
    myBuilder.Append("<Table>");
    for(int i=0;i<objTable.Rows.Count;i++)
    {
        myBuilder.AppendFormat("<tr><td><a href=\"" + {0} + "\">{1}</a></td></tr>",objTable.Rows[i][1].ToString(), objTable.Rows[i][0].TOString());
    }
    myBuilder.Append("</Table>");DIV1.InnerHTML = myBuilder.ToString();
    这样也可以实现类似的效果。当然更可以用DataGrid的模板列,在其中放一个HyperLink控件,在DataGrid的ItemDataBind()事件中设置每个链接的参数这样实现。具体怎么操作看你的发挥了
      

  8.   

    caibird1984 说的太清楚了。.结帖,..给分