【问题标题】:Why is setting ImageUrl of ImageButton in javascript doesn't work?为什么在 javascript 中设置 ImageButton 的 ImageUrl 不起作用?
【发布时间】:2017-03-30 08:53:20
【问题描述】:

我是 asp.net 的新手。我尝试使用以下代码更改 asp.net imageButton 的图像:

<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="/Images/blueButton.png" Width="137px" Height="34px" onmouseover="this.ImageUrl='/Images/greenButton.png'" onmouseout="this.ImageUrl='/Images/blueButton.png"/>

没有用。 但是,以下代码确实有效:

<asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="/Images/blueButton.png" Width="137px" Height="34px" 
    onmouseover="this.src='/Images/greenButton.png'" onmouseout="this.src='/Images/blueButton.png"/>

如您所见,我使用的是 src 而不是 ImageUrl。

为什么第一个不起作用?

【问题讨论】:

    标签: javascript asp.net


    【解决方案1】:

    您正在混合服务器和客户端代码。 JavaScript 在客户端运行,而您的 &lt;asp:ImageButton&gt; 在服务器上运行。这是两个独立的域。

    ASP.NET 在服务器上将&lt;asp:ImageButton&gt; 呈现为HTML &lt;img src="/Images/blueButton.png"&gt; 并将其发送到客户端,然后鼠标事件可以在客户端访问其名为src 的DOM 属性。

    查看浏览器中的 HTML 源代码,了解您在 ASPX 文件中编写的内容与浏览器接收到的 HTML 之间的区别。

    【讨论】:

    • 谢谢。实际上, 被渲染到 而不是
    • 我没有检查,@cookya,我想发布一个快速简单的答案,所以我在这里做了一个有根据的猜测。没有错过太多。
    猜你喜欢
    • 1970-01-01
    • 2015-01-15
    • 2013-08-20
    • 1970-01-01
    • 2014-12-08
    • 1970-01-01
    • 2016-09-25
    • 2021-04-09
    • 1970-01-01
    相关资源
    最近更新 更多