2010-09-27 76 views
2

使用滚动图片滑块并需要在页面上的特定div中动态创建超链接和div,以便我可以使用JQuery来控制它。使用C#创建html

<div id="scroller"><!-- here is where I want the html to be created and what needs to be created --><a href="#" class="scrollimage"><img src="images/image10.jpg"/> </a></div> 

我已经创建了聚集在目录中的文件的数量和可循环的次数添加的文件,但不知道如何放置HTML的特定DIV的数组。

+0

你实际工作的一个ASP .NET网站在这里?或者你是否真的有一个HTML页面和一些Javascript代码,并且正在开始着手编写一些服务器端代码? – Carson63000 2010-09-28 01:11:42

+0

这是一个asp.net网站,并在那里的主页上创建一个图像滚动。我建立了页面,我有图像滚动/ JQuery的工作,但需要动态添加包含在网站服务器上的目录中的超链接和图像。对于每个图像,我需要在

中添加超链接标记和图像标记。这不是我第一次写服务器端代码,但我只是没有接受过事情的相关培训,也没有接受过不同情况下使用的最佳语言。 – Roll12 2010-09-28 17:07:59

回答

1

理想情况下,您不希望使用C#来生成HTML。

由于您使用.NET,我假设您使用ASP.NET Web窗体和ASP.NET MVC。

对于Web窗体,您应该使用像Repeater和databind这样的服务器控件来处理文件数组。

对于MVC,将数据作为视图模型或其一部分返回。

如果你对生成的C#HTML死心塌地,看看Html32TextWriter

编辑:这里有一个办法做到这一点在ASP.NET的WebForms。请注意,这不是一个完整的例子,它只是让你在正确的轨道上a

代码背后:

protected void Page_Load(object sender, EventArgs e) 
{ 
    scrollerRepeater.ItemDataBound += BindScrollerItem; 

    var files = Directory.GetFiles("*.jpg").Select(filename=>new FileInfo(filename)); 
    scrollerRepeater.DataSource = files; 
    scrollerRepeater.DataBind(); 
} 

private void BindScrollerItem(object sender, RepeaterItemEventArgs e) 
{ 
    ListItemType type = e.Item.ItemType; 
    if(type != ListItemType.Item && type!=ListItemType.AlternatingItem) 
    { 
     return; 
    } 

    var file = e.Item.DataItem as FileInfo; 
    if(file == null) 
     return; 

    var image = e.Item.FindControl("scrollerImage") as HtmlImage; 
    if (image == null) 
     return; 

    image.Src = 
} 

ASPX

<div id="scroller"> 
<!-- here is where I want the html to be created and what needs to be created 
<a href="#" class="scrollimage"><img src="images/image10.jpg"/> </a> 
--> 
<asp:Repeater ID="scrollerRepeater" runat="server"> 
    <ItemTemplate> 
     <a href="#" class="scrollimage"><img alt="" runat="server" id="scrollerImage"/> 
    </ItemTemplate> 
</asp:Repeater> 
</div> 
+0

在我的情况下,确定服务器上目录中图像数量的最佳做法是什么,然后将它们放入由超链接标记包裹的特定div

?如果这不是C#是Java吗?或另一种语言?最后,我使用Jquery将运动动作应用于图像。 – Roll12 2010-09-27 23:52:44

+0

有一些方法可以让那只猫,Roll12皮肤。你能给我们一些关于你的环境的更多信息吗?我们知道你在服务器上使用C#。你在使用ASP.NET Web表单吗? – 2010-09-28 02:30:05

+0

它内置到一个asp.net页面.aspx中,实际上是masterpage的一部分。它不是人们输入信息的表单,而是从图像目录中加载图像然后与JQuery交互的页面部分。问题是我需要它去目录,看看有多少图像在那里,然后创建HTML,所以我可以让JQuery动画。 – Roll12 2010-09-28 17:07:19

0

您可以使用XSL我在HTML做了一些报告与XSL,这里的example