次のシナリオがあります。
私は 2 つのパネルを持っており、2 つを切り替えるリンクがあります。これらのリンクはページをポストバックしません。パネルをフェードインおよびフェードアウトする JavaScript コードを呼び出して、表示を変更します。
どちらのパネルにも、ページをポストバックするボタンがあります。2 番目のパネルにフェードインした後、viewstate が無効になり、ポストバックが失敗します。
これら 2 つのパネルの可視性を同期する JavaScript からビューステートを有効にする方法はありますか? または、これを機能させるにはポストバックする必要がありますか? もしそうなら、ページを点滅させずにポストバックして、パネルをうまくフェードさせることはできますか?
編集:これは私が持っているコードの一部です。明らかに、div内にたくさんのコントロールがあります
<div id="step_one" class="lt-step-1">
<asp:Button Text="Entrar" ID="btnPost1" OnClick="btnPost1_Click" ValidationGroup="Step1Val" CssClass="btn btn-primary lt-width-5" runat="server" />
<a href="#" id="link_Step_Two"><span class="icon-repeat"></span>Step Two</a>
</div>
<div id="step_two" class="lt-step-2 hide">
<asp:Button Text="Confirmar" ID="btnPost2" OnClick="btnPost2_Click" ValidationGroup="Step2Val" CssClass="btn btn-primary lt-width-5" runat="server" />
<button type="button" id="btn_cancel_step_two" class="btn">Cancelar</button>
</div>
<script>
require(['jquery', 'bootstrap'], function ($) {
'use strict';
var $stepOne = $('#step_one'),
$stepTwo = $('#step_two'),
$allSteps = $('[id^="step_"]'),
$link_Step_Two = $('#link_Step_Two'),
$btnCancelStepTwo = $('#btn_cancel_step_two'),
$link_Step_Two.on('click', function () {
$allSteps.hide();
$stepTwo.fadeIn();
});
$btnCancelStepTwo.on('click', function () {
$allSteps.hide();
$stepOne.fadeIn();
});
});
</script>