ASP.NETを使用しており、ウィザードコントロールにラジオボタンがあり、[はい]を選択するとパネルが表示されますが、[いいえ]を選択するとパネルが非表示になります。MaintainScrollPositionOnPostBackをTrueに設定しましたが、ActiveStepChangedイベントによってFalseに変更されるため、[次へ]をクリックして次のウィザードステップを表示すると、ページの上部から開始されます。問題は、[次へ]をクリックした後、最初にラジオボタンをクリックすると、ページの上部にジャンプすることです(最初にラジオボタンをクリックした後は、ページはその位置を保持します)。初めてジャンプするのを防ぐにはどうすればよいですか?
9127 次
3 に答える
4
Page.MaintainScrollPositionOnPostBack = true
ポストバックで現在の画面位置を維持するように設定します。
これは、JavaScriptなどを使用して自分でこれを実行するよりも簡単です。
于 2010-12-15T22:37:45.870 に答える
2
UpdatePanelにコントロールを配置することで、ページが完全に更新されないようにすることができます。
于 2010-12-15T22:25:43.447 に答える
1
私はこれが答えられたことを知っていますが、私が取り組んでいたプロジェクトにajaxを使用することができません。私は同様の問題を抱えていて、許容できる回避策を見つけました。マスターページもあるページ内にユーザーコントロールがあります。ユーザーコントロールには、ポストバックをトリガーするいくつかのコントロールが下部にある入力フォームがあります。マスターページのメインコンテンツdivは、これをスクロール可能にします(大きすぎるため)。私が見つけた解決策は、ページのフォーカスを、c#コードビハインドのポストバックによってトリガーされるイベントのコントロールに設定することでした。例えば:
protected void cbShip_CheckedChanged(object sender, EventArgs e)
{
if (cbShip.Checked)
{
pnlShip.Visible = true;
Page.SetFocus(ddlShipCountry);
}
else
{
pnlShip.Visible = false;
}
return;
}
于 2011-09-07T18:32:01.763 に答える