簡體   English   中英

單擊按鈕時更改 div 的背景顏色

[英]change background color of div on button click

在我后面的代碼中,我正在生成 html 字符串

<a href='#' class='my-post' onclick='myFunc(" + Id + ")'>
     <div class='my-idea'>
        <span >23</span>
        <span class='heart'></span>
     </div>
</a>

我在后面的代碼中實現了myFunc函數,如下所示

funcString += "function myFunc(id){";
funcString += "document.getElementById(\"" + btn1.ClientID + "\").click();"; 
funcString += "}";

然后在btn1單擊事件上我做了一些處理

protected void btnSubmitWinnerPage_Click(object sender, EventArgs e)
    {
      // some processing
    }

現在我想在單擊按鈕時更改該 href 標簽內 div 的背景顏色。 我怎樣才能實現?

將 runat 服務器添加到您的 div,並為其指定一個 ID。

  <div runat="server" id="mydiv">

    </div>

然后你可以在代碼隱藏中添加背景顏色,如下所示:

this.mydiv.Style.Add("background-color", "#FF00FF");

如果您使用 JavaScript 添加背景顏色,例如像這樣:

document.getElementById("mydiv").style.background = "#FF00FF";

然后它將被刪除,因為在您的 JS 函數更改頁面后,回發點擊事件上的回發會重新加載頁面...

順便說一句,如果你使用 .NET 4.0,你可以使用 clientidmode="Static" 所以你不需要

document.getElementById("<%=btn1.ClientID %>").click(); 

像這樣

<div runat="server" id="mydiv" clientidmode="Static">

我還建議您使用 AJAX(jQuery AJAX + ashx-handler + JSON,而不是 ms-ajax 控件)而不是回發進行處理。
如果您使用回發,您網站的速度和可用性很可能會很糟糕。

您可以使用 Page.RegisterStartupScript 添加腳本以更改事件“protected void btnSubmitWinnerPage_Click(object sender, EventArgs e)”背后代碼的背景顏色

如果您使用 jQuery,則使用 $('.my-idea').css('background-color', 'blue') 更改 div 的背景顏色

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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