0
後でjsスクリプトで埋め込まれるdivを生成するASP Repeaterがあります(わかりやすくするためにスクリプトは棒グラフを描画します)。私はそれらのdivのIDが必要なので、jsスクリプトがそれらを対象とすることができます。スクリプトはコードの背後から開始されます。ASP Repeater - 生成された要素IDを取得
リピータはList<List<Object>> Recordsaggregated
にバインドされています。 List<Object>
には、私の棒グラフの生データが含まれています。 loadGraphは、引数でのdiv IDを取る必要があります
foreach (var recordlist in Recordaggregated)
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "graphscript", "loadGraph();", true);
}
:List<List<Object>>
(引数で適切なdiv要素を持つのJS関数のように1つのコール)の背後にあるコードで
<asp:Repeater runat="server" ID="graphdivs">
<ItemTemplate>
<div id="DivChart<%# Container.ItemIndex + 1%>" style="width: 600px; height: 250px;"></div>
</ItemTemplate>
</asp:Repeater>
に要素ごとに1つのチャートがあるはずですここでは、リピータによって生成されたdivのIDを取得する方法と、スクリプトの前回の呼び出しで使用されなかったdivを取得する方法についてはわかりません。
'graphdivs.ClientID'はあなたが探しているものです。 – VDWWD
ちょっと丁寧に説明できますか? ClientIDは中継器自体のIDですか? –
申し訳ありませんが、間違いました。 Repeaterコントロールは、DOM内にClientIDを持っていません。したがって、 'Repeater'を' div 'であなた自身の 'ID'で囲みます。リピーター内のもの(DivChart0、DivChart1)はあなた自身の名前をつけ、aspnetで名前を変更しません – VDWWD