簡體   English   中英

使用HtmlGenericControl添加標簽

[英]Add a tag using HtmlGenericControl

我想使用onserverclick屬性添加'a'標簽

我正在使用以下代碼。但是onserverclick事件未觸發(不起作用)

onserverclick:

protected void Pagination_Click(object sender, EventArgs e)
{

}

我的C#代碼:

HtmlGenericControl li = new HtmlGenericControl("li");
olpage.Controls.Add(li);


HtmlGenericControl a = new HtmlGenericControl("a");
a.Attributes.Add("ID", i.ToString());
a.Attributes.Add("onserverclick", "Pagination_Click");
a.InnerHtml = i.ToString();
li.Controls.Add(a);

HTML代碼:

<%@ Master Language="C#" MasterPageFile="~/MasterPage.master" AutoEventWireup="true"CodeFile="Products.master.cs" Inherits="Productmaster"%>...
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">...
    <div class="pages">
         <ol id="olpage" runat="server">

         </ol>
    </div>...

更改您的C#代碼以使用LinkBut​​ton而不是HTMLGenericControl,而不是設置onserverclick的屬性,並使用Click + =進行設置

LinkButton a = new LinkButton();
a.Attributes.Add("ID", i.ToString()); 
a.Click += Pagination_Click;
a.Text = i.ToString();
li.Controls.Add(a);

HTMLGenericControl只是呈現為

<a id="id" onserverclick="Pagination_Click">id</a>

而且瀏覽器不知道如何處理onserverclick屬性,因為它不是有效的HTML。 使用LinkBut​​ton呈現為

<a id="id" href="javascript:__doPostBack('ctl00$MainContent$ctl01','')">id</a>

實際上導致它回發

暫無
暫無

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

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