簡體   English   中英

如何在HTML img標簽中將變量傳遞給src屬性

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM