我在.ascx文件中将以下代码作为asp.net项目的一部分。如何编写JavaScript以将图像源更改为gif?
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="Steps123.ascx.cs" Inherits="SwintonTaxiWeb.UserControls.Steps123" %>
<div id="slickShow">
<div class="<%=stepOneDivClass %>">
<asp:ImageButton runat="server" ID="GetQuote"
CssClass="imgBut swapImage {src: '/images/Quote-Oval-button-(roll-over).png'}"
ImageUrl="/images/Quote-Oval-button.png" AlternateText="Get Quote" TabIndex="1" />
</div>
<div id="rollOver">
<img src="/images/Roll-over-to-view-steps-two-and-three.png" alt="Roll over to view steps 2 and 3" />
</div>
<div id="slideContainer">
<div class="step-two">
<asp:ImageButton runat="server" ID="GetCallback"
CssClass="swapImage {src: '/images/Call-back-button-(roll-over).png'}"
ImageUrl="/images/Call-back-button.png" AlternateText="Get Callback" Width="69"
Height="44" TabIndex="2" />
</div>
<div class="step-three">
<fieldset>
<asp:TextBox CssClass="postcode" ID="postcode" runat="server" TabIndex="0" /><asp:ImageButton runat="server"
ID="go" CssClass="go" ImageUrl="/images/Go-button.png" AlternateText="Go" onclick="Go_Click" TabIndex="1" />
</fieldset>
</div>
</div>
</div>
答案 0 :(得分:3)
只使用JavaScript即可:
var image = document.getElementById('ctl00_MainContent_tester_GetQuote');
image.src = [path to gif];
你也可以使用jQuery通过类(或者你想要的其他选择器)来获取元素:
var image = $('.[ClassOfImage]').attr('src', '[NewPathToGif]');
我喜欢jQuery。
答案 1 :(得分:0)
像...一样的东西。
document.getElementById("ctl00_MainContent_tester_GetQuote").src = "myImage.gif";
如果你想保持动态,可以使用myControl.ClientId代替“ctl00_MainContent_tester_GetQuote”。
答案 2 :(得分:0)
最简单的方法就是这样
document.getElementById('ctl00_MainContent_tester_GetQuote').src = 'mygifsrc.gif';
但是在这种情况下,id是一个ASP.Net生成的id,你可能无法指望它不会改变你。解决这个问题的正常方法是找到一个容器(比如你的div,但不是自定义控件的一部分),然后从那里调用类似getElementsByTagName()
的东西来找到你需要的元素。但是,由于你没有分享你周围的HTML,我还不能给你一些我知道会起作用的东西。