[英]How to pass a variable to src attribute in HTML img tag
.aspx文件中的图像
<img src='<%=vPath%>' alt="" id="image" />
在aspx.cs中
public string vPath ;
protected void BtnSearchFarms_Click(object sender, EventArgs e)
{string vImageName = LblFarmId.Text;
string vPath = "~/attachments/survey/" + vImageName + ".jpg";}
如何将vPath变量传递给img标签中的src? 这是正确的吗? 当我执行页面时,它仍然没有在img标签中显示任何结果
不确定确切要实现的目标还是正确的实现目标,但是最简单,快速,简便的方法是:
<asp:Button id="BtnSearchFarms" OnClientClick="imageToHiddenField()" />
<input type="hidden" name="imgHidden" id="imgHidden" />
然后使用javascript:
function imageToHiddenField() {
document.getElementById("imgHidden").value = document.getElementById("image").src;
}
该值将被添加到隐藏字段中,并将与发布的数据一起返回。 可以使用Request.QueryString [“ imgHidden”]或Request.Form [“ imgHidden”]来检索它,具体取决于您使用的是POST还是GET。
不优雅,但应该可以。
您的问题很难说出来,但听起来您的页面上有一张图片,并且您正在尝试根据用户输入更改src?
我要说的不是使用<img>
,最简单的方法是使用<asp:Image>
,然后它具有可以设置的ImageUrl属性。 除了可以在路径中使用〜之外,ASP Image的工作原理通常类似于常规img。
protected void BtnSearchFarms_Click(object sender, EventArgs e)
{
string vImageName = LblFarmId.Text;
theAspImage.ImageUrl = "~/attachments/survey/" + vImageName + ".jpg";
theAspImage.Visible = true;
}
在aspx中:
<asp:Image id="theAspImage" runat="server" Visible="false" />
如果您不能使用asp:image,则需要解析路径,使其不带有〜。 您可以使用Page.ResolveUrl("~/attachments/survey/" + vImageName + ".jpg")
将其转换为可通过网络访问的路径。
重要说明之一,非常重要的说明是,事件处理程序中包含string vPath
。 这意味着您正在创建一个新变量,而不修改您的公共实例变量。 更改:
string vPath = "~/attachments/survey/" + vImageName + ".jpg";
要: vPath = "~/attachments/survey/" + vImageName + ".jpg";
如果这些都不能回答您的问题,那么我认为我们需要更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.