如何在 C#.NET 后面的代码中获取由 JavaScript 更改的 img src
How to get img src that changed by JavaScript in code behind C#.NET
这是我的客户端代码:
<form id="form1" runat="server">
<div>
<img id="mm" runat="server" />
</div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
<script>
document.onclick = function () {
mm.src = "photo1.jpg";
}
</script>
</form>
我尝试在后面的代码中获取 img src,但它 returns null :
protected void Button1_Click(object sender, EventArgs e)
{
string s1= Request.Form["mm"];
string s2= mm.Attributes["src"];
string s3 = mm.Src;
}
我该怎么做?
你简单的不行。在被 javascript.
更改后,您无法获取图像 src
后面的代码
这是因为即使 post 返回此信息也不会传回服务器。
解决方法是将 src
同时保存到值上的隐藏输入控件...相同的数据。
所以在 post 返回后,您从该输入控件读取值,因为只有那种类型的控件会发回它们的值。
这是一个基于您的代码的示例
<asp:HiddenField runat="server" ID="ImgExSrc" />
<script>
document.onclick = function () {
mm.src = "photo1.jpg";
document.getElementById("<%=ImgExSrc.ClientID%>").value = mm.src;
}
</script>
在后面的代码中,您只需阅读 post 后面的 ImgExSrc.Value
。只有返回 post 才能将您的值发送到服务器端。
这是我的客户端代码:
<form id="form1" runat="server">
<div>
<img id="mm" runat="server" />
</div>
<asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
<script>
document.onclick = function () {
mm.src = "photo1.jpg";
}
</script>
</form>
我尝试在后面的代码中获取 img src,但它 returns null :
protected void Button1_Click(object sender, EventArgs e)
{
string s1= Request.Form["mm"];
string s2= mm.Attributes["src"];
string s3 = mm.Src;
}
我该怎么做?
你简单的不行。在被 javascript.
更改后,您无法获取图像src
后面的代码
这是因为即使 post 返回此信息也不会传回服务器。
解决方法是将 src
同时保存到值上的隐藏输入控件...相同的数据。
所以在 post 返回后,您从该输入控件读取值,因为只有那种类型的控件会发回它们的值。
这是一个基于您的代码的示例
<asp:HiddenField runat="server" ID="ImgExSrc" />
<script>
document.onclick = function () {
mm.src = "photo1.jpg";
document.getElementById("<%=ImgExSrc.ClientID%>").value = mm.src;
}
</script>
在后面的代码中,您只需阅读 post 后面的 ImgExSrc.Value
。只有返回 post 才能将您的值发送到服务器端。