UpdatePanelを1つ送信すると、別のUpdatePanelのチェックボックス入力がクリアされますか?

更新パネルに2つのチェックボックスがあります。 1つはASP.NET CheckBoxコントロールで、もう1つはHTMLの <input> 要素です。 別の更新パネルにボタンがあります。

ページの関連部分は次のとおりです。


    
        <input type="checkbox" id="check1" name="check1" />HTML Input

両方のチェックボックスをオンにして、ボタンをクリックします。私が見ているのは、ちょうどHTMLであるものからチェックマークが消えるのですが、CheckBoxコントロールのチェックマークはまだそこにあります。

どうして?私は2番目の更新パネルの部分的なポストバックを行っているので、最初の更新パネルの何もは変更されないと思いました。

2つのチェックボックスを更新パネルから移動すると、両方ともチェックマークが表示されます(予想通りです)。

1
ミッチェル・セラーズの答えがそれを説明している。私は、CheckBoxコントロールが入力要素とは異なる動作をしていることに驚いてはいけないということを付け加えます。ページはページライフサイクルごとにデフォルトから開始されますが、CheckBoxはそのLoadPostDataメソッドに投稿された値を復元します。
追加された 著者 Tim Goodman,

1 答え

私の推測では、実際に使用されている更新パネルのみが更新されるように、更新パネルを設定する必要があるということです。 UpdatePanel2が更新されると、両方のパネルが更新されます。 UpdatePanel1でUpdateMode = "Conditional"プロパティを設定している限り、望ましい効果が得られます。

このMSDNドキュメントは、 UpdateMode/a>プロパティ。

2
追加された
これで説明します。ありがとうございます。私はあなたがUpdateMode = "Conditional"から得た動作がデフォルトであると思っていたと思いますが、そうではありません。
追加された 著者 Tim Goodman,