Web フォーム サイトにいくつかの折りたたみブロックがあります。次のように、Bootstrap を使用してそれらを折りたたんでいます。
<div class="span<%# CurrentBlock.Span > 0 ? CurrentBlock.Span.ToString() : "12" %> info-link-header info-link-header-title expandable-link-heading" data-toggle="collapse" data-target="#<%# ContentId %>" style="position: relative;">
<!--some content-->
<div class="expandable-container collapse" id="<%# ContentId %>"><!--some more content--></div>
このファイルの分離コードは次のとおりです。
protected void Page_Load(object sender, EventArgs e)
{
this.DataBind();
//some other code
}
DataBind() が呼び出されるので、 <%# ContentId %> コード ブロックが正しい値を取得する必要があると想定します。私が経験している問題は、展開したい div をクリックすると、クラス属性が「折りたたみ」を生成できないことです。「折りたたみ」と表示されるだけなので、Chrome 開発ツールで検査するとコンテンツがレンダリングされます。しかし見えません。Chrome Dev tools に「collapse in」を追加すると問題は解決しますが、もちろん、これを自動的に行う必要があります。さらに紛らわしいのは、これをローカルでビルドすると、ブロックが毎回正しく展開/折りたたまれることです。「崩壊」は必要なときに追加され、必要なときに「崩壊」に戻ります。開発サーバーに公開すると、「折りたたみ」がランダムに生成されません。どうすればこれを修正できますか? ありがとう!