2

JavaScript 関数を呼び出して折りたたみ/展開したいと考えています。

このコードを asp:repeater ItemTemplateon spanで使用しています

onclick="javascript:funCollExp(this,'<%= P1.ClientID %>');"

どうすれば合格できControl.ClientIDますか?

ページ上の文字列として P1.ClientID を置き換えます。

4

2 に答える 2

3

あなたはちょうどこのようにする必要があります

"onclick="javascript:funCollExp(this,'" + P1.ClinetID + "');"

このようなitemdataboundイベントを利用するための完全なコード

マークアップ

<asp:Repeater id="myRepeater" 
       OnItemDataBound="myRepeater_ItemDataBound" runat="server">
    <ItemTemplate>
        <asp:button id="myDiv" runat="server">......</asp:button>
    </ItemTemplate>
</asp:Repeater>

コードビハインド

protected void myRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
    if(e.Item.ItemType == ListItemType.Item 
           || e.Item.ItemType == ListItemType.AlternatingItem)
    {
      Button mybtn = e.Item.FindControl("mybtn") as bUTTON;

      mybtn.Attributes.Add("ONCLICK", "MYFUNCTION(this,'" + P1.ClientID + "');");
    }
}
于 2012-07-21T07:52:27.993 に答える
1

あなたがする必要があるのは、このように使用することだけです

"onclick="javascript:funCollExp(this,'" + P1.ClinetID + "');"
于 2012-07-21T08:34:52.570 に答える