-1

我正在使用 ASP.NET。我正在使用中继器来显示图像,并且我还为每个图像使用了一个复选框。

如何选择单个图像并根据图像 ID 更新它们的值?

我的代码是:

 <asp:Repeater ID="Repeater1" runat="server">
      <ItemTemplate>
           <img ID="ImageZoom" runat="server" 
                src='<%# DataBinder.Eval(Container.DataItem, "ImageUrl") %> '
                style="display: inline; height:auto; left: 0pt; top: 0pt;
                width:auto;" />
           <asp:CheckBox ID="CheckBox1" runat="server" />
      </ItemTemplate>
</asp:Repeater>
4

1 回答 1

0

您可以使用 javascript 来实现这一点,这样的事情应该可以解决问题:

没有 jQuery

<asp:Repeater ID="Repeater1" runat="server">
      <ItemTemplate>
           <img ID="ImageZoom" runat="server"
                onclick="imageClickHandler(this,event);" 
                src='<%# DataBinder.Eval(Container.DataItem, "ImageUrl") %> '
                style="display: inline; height:auto; left: 0pt; top: 0pt;
                width:auto;" />
           <asp:CheckBox ID="CheckBox1" runat="server" />
      </ItemTemplate>
</asp:Repeater>

function imageClickHandler(s,e){
//do something with the current image that is being clicked on.
//The parameter 's' is a reference to the caller of this method and the 'e' contains
//event data  
}

使用 jQuery

如果你使用 jQuery,你也可以尝试这样的事情:

<asp:Repeater ID="Repeater1" runat="server">
      <ItemTemplate>
           <img ID="ImageZoom" runat="server"
                class="handled" 
                src='<%# DataBinder.Eval(Container.DataItem, "ImageUrl") %> '
                style="display: inline; height:auto; left: 0pt; top: 0pt;
                width:auto;" />
           <asp:CheckBox ID="CheckBox1" runat="server" />
      </ItemTemplate>
 </asp:Repeater>

<script type="text/javascript" src="jquery-1.7.3"></script>
$(function(){
  $("img.handled").click(function(){
    //alerts the id of the image thats being clicked on.
    alert($(this).attr("id"));
  });
});
于 2012-08-22T06:33:09.480 回答