こんにちは私はasp.net
私が遊んでいる簡単なウェブフォームを持っています:
<div id="in_mess" runat=server >
<div class="dialog" runat=server>
<p class="dialog_interior">Test Message</p>
</div>
</div>
<div id="out_mess" runat=server>
</div>
</div>
<div id="mess_con" runat=server>
<form runat=server id="form_con" >
<p><label>Message</label><input type="text" width="250" id="inp_message"></p> <br>
<p><label>To</label><input type="text" width="100" id="inp_recepeint"></p> <br>
<asp:Button ID="ButtonChat" text="Chat" runat=server
onclick="ButtonChat_Click" />
</form>
</div>
背後にあるコードでは、ButtonChatがクリックされたときの次の簡単な関数を実装しました。
protected void ButtonChat_Click(object sender, EventArgs e)
{
this.in_mess.Controls.Add(new Label { Text = "Hello", CssClass = "dialog" });
}
問題は、divに複数のラベルを追加できないことです。追加したラベルは残りますが、何度クリックしても新しいラベルが追加されないことがわかります。
行にブレークポイントを設定しましたが、コントロールコレクションの数が3のまま変更されていないことが示されています。
JavaScriptを介してタグを追加するときに同様の問題が発生し<p>
、フォームによるページの再読み込みを停止して修正しましたが、これをASP.NETに適用できるかどうかはわかりません。