对不起,这真的是一个noob问题,但请理解我没有太多的ASP.NET经验。我需要做的就是:
1)打开以下SQL查询:
SELECT myid FROM mytable
2)对于每条记录,生成HTML片段:
<a href="#mynameanchor" onClick="myfunction( '__myid comes here__' );"><img src="http://someurl/__myid comes here as well__/small.png" /></a>
我很容易使用经典的ASP <% do until recordset.eof ... loop %>
样式循环但我需要它在ASP.NET样式中,可能在Page_Load事件中执行操作并使用内部ASP.NET控件。
答案 0 :(得分:4)
使用转发器控件。在ItemTemplate中,您可以为查询返回的每条记录添加您想要生成的内容。
http://articles.sitepoint.com/article/asp-net-repeater-control
答案 1 :(得分:3)
在aspx页面源中添加它
<td id="urLink" runat="server">
</td>
在Page_Load事件中添加此内容
SqlConnection con = new SqlConnection();
con.connectionstring = "your connection database";
SqlDataReader reader;
SqlCommand command = new SqlCommand(con);
command.Commandtext = "SELECT myid FROM mytable";
command.CommandType = CommandType.Text;
reader = command.ExecuteReader();
while(reader.Read())
{
urLink.innerHTML += "<a href="#mynameanchor" onClick="myfunction( " + reader["myid"].tostring() + " );">
<img src="http://someurl/" + reader["myid"].tostring() + "/small.png" /></a>";
}
答案 2 :(得分:2)
看起来onclick是一个javascript事件,这意味着您可以将HTML标记写入字符串,然后将其全部附加到文字控件中。记得使用stringbuilder:)
这是一个非常基本的例子:
// get data from database and into a reader before
StringBuilder links = New StringBuilder();
while(reader.read())
{
links.appendFormat("<a HREF='id_{0}'>{0}</a>", reader["ID"]);
}
ltlLinks.Text = links.ToString();