是否可以通过单击按钮设置图像的src。 我的每个按钮代表一张应该在我的“图像”区域中显示的图片。我需要图像区域的SRC属性受按钮单击影响。 我使用visual studio 2012和c#。
-Edit:使用Visual Studio 2012中的AJAX Update面板和C#
答案 0 :(得分:1)
是。您将能够通过使用JavaScript并将单击处理程序附加到按钮(onclick =“loadImage1()”)来实现此目的。
loadImage1函数需要您编写访问image元素的src属性所需的javascript并进行更改。
您可以使用普通的javascript(参见上面的概念),或者使用一些javascript库(如jQuery)来实现这一点。为了实现跨浏览器兼容性并且不必编写跨浏览器安全逻辑,我建议使用jQuery来处理这个问题。
<img id="img1" src="initialimagehere.jpg"/>
然后您可以像这样更改src属性:
$("#img1").attr("src","newimagehere.jpg");
jQuery:this link
答案 1 :(得分:1)
如果每次更改图像都可以接受回发,您可以执行以下操作:
在C#中:
protected void btnClick(object sender, EventArgs e) {
Button btn = (Button) sender;
switch (btn.ID) {
case "btn1": img.ImageUrl = "<Image_Url>"; break;
case "btn2": img.ImageUrl = "<Image_Url>"; break;
}
}
在ASPX页面中:
<asp:Image ID="img" runat="server" />
<asp:Button ID="btn1" runat="server" OnClick="btnClick" />
<asp:Button ID="btn2" runat="server" OnClick="btnClick" />
答案 2 :(得分:0)
我注意到,如果没有首先在.aspx代码中为ImageUrl指定值,那么我就无法在.aspx.cs代码中进行设置。
即,如果我的.aspx代码为:
<asp:Image runat="server" id="imgPickLg0101" class="ImgSzLarge" />
我无法在后面的代码中设置它。
但是,如果我 first 为ImageUrl指定了一个值:
<asp:Image runat="server" id="imgPickLg0101" class="ImgSzLarge" ImageUrl="../Images/somepic.jpg" />
然后我可以在.aspx.cs代码中进行设置:
imgPickLg0101.ImageUrl = "../Images/DifferentPicture.jpg";