可以将命令参数和onclick事件添加到div吗?

时间:2013-04-02 07:16:12

标签: c# javascript asp.net jquery-plugins

我有一张相册(不是图库),用它预览照片。根据与用户关联的专辑数量动态生成专辑。我想在其上添加点击事件,以便当一个人点击一个专辑时,它会将他带到该专辑中的照片。我是初学者所以我不知道如何做到这一点。但我认为添加命令参数应该可以解决问题。

ASPX代码:

for (int i = 0; i < dt5.Rows.Count; i++)
{
    string q = "select  imageurl from photos where albumid='" 
                                        + dt5.Rows[i]["albumid"].ToString() + "'";
    dt6 = dbo.Getdt(q);
    a = dt6.Rows[0]["imageurl"].ToString();
    b = dt6.Rows[1]["imageurl"].ToString();
    c = dt6.Rows[2]["imageurl"].ToString();
    a= a.Substring(1, a.Length - 1);
    b = b.Substring(1, b.Length - 1);
    c = c.Substring(1, c.Length - 1);
  %> 
   <div   class="image_stack" style="margin-left:300px ; right: 418px;"   
        runat="server">
       <img   class="stackphotos photo1" src="<%: a %>"   />
       <img   class="stackphotos photo2" src="<%: b %>"  />
       <img "   class="stackphotos photo3" src="<%: c %>" />
   </div>
     <br /><br /><br /><br />
<% } %>

在上面的代码中,image_stack是div,用于使用Jquery插件显示相册。

2 个答案:

答案 0 :(得分:0)

纯粹根据您发布的内容,这将让您处理“选择”相册图片:

<script>

    $(function() {
        $('div.image_stack').on('click', 'img.stackphotos', function(event) {
            // handle click event
        });
    });

</script>

您在点击活动中所做的事情取决于您,因为我不完全确定您的意思

  

...带他去看那张专辑中的照片。

如果目的是将用户重定向到新页面,那么你真的应该将图像包装在超链接标签中并使用“自然”HTTP机制。

修改

要在评论中回答您的问题,您有两种选择:

1)将图像包裹在锚中:

<a href="url_to_your_detail_page"><img class="stackphotos photo1" src="<%: a %>" /></a>

我不知道href的值是什么,因为这取决于您是否知道您的网站设置方式。

2)使用JavaScript重定向:

window.location.replace('url_to_your_detail_page');

MDN有一个很好的参考:https://developer.mozilla.org/en-US/docs/DOM/window.location

在任何一种情况下,您都必须在创建页面标记时生成正确的URL。

答案 1 :(得分:0)

尝试下面的代码,使用Jquery在Div上添加Click and Pass Command Argument:

$(".image_stack").click(function(event){
//Do here whatever you want
});