0

ラジオボタンのグループがあります。ラジオ ボタンが変更されると、イベントが発生します。特定のラジオ ボタンが選択されているかどうかがチェックされ、選択されている場合はテキスト ボックスが表示されます。

<div class="row">
     <div class="span3">
          <label>@Html.RadioButtonFor(model => model.HearAboutUs, "radWebsite", new { @id = "radWebsite" }) Website</label>
          <label>@Html.RadioButtonFor(model => model.HearAboutUs, "radFromEmployee", new { @id = "radFromEmployee" }) An employee</label>
          <label>@Html.RadioButtonFor(model => model.HearAboutUs, "radEvent", new { @id = "radEvent" }) At an event</label>
          ...
          <label>@Html.RadioButtonFor(model => model.HearAboutUs, "radOther", new { @id = "radOther" }) Other</label>
     </div>
     <div class="span3">
          @Html.ValidationMessageFor(model => model.HearAboutUs)
     </div>
</div>

スクリプト:

$('input:radio[name="HearAboutUs"]').change(function () {
    $('input[type=radio].input-validation-error').parent().removeClass('error-label');

    if ($('#radOther').is(':checked')) {
        if ($('#HearAboutUsDescription').is(':hidden')) {
            $('#HearAboutUsDescription').show("blind");
        }
    } else {
        if ($('#HearAboutUsDescription').is(':visible')) {
            $('#HearAboutUsDescription').hide("blind");
            $('#HearAboutUsDescription').val('');
        }
    }
});

これはうまくいきます!ただし...これは、ユーザーがそれぞれ次へ/戻るを押すと非表示および非表示になる部分的なページです。次を押してから戻る。テキスト ボックスを非表示にするスクリプトが 2 回呼び出される!? ただし、表示されているときではありません。メインのインデックス ページにある次/戻るのコード:

$('#nextBtn').click(function () {
    $('#panel1').hide("", function () {
        $('#panel2').show("blind");
        $('#backBtn').show();
    });
});

$('#backBtn').click(function () {

    if ($('#panel2').is(":visible")) {
        $('#headerTitle').text("Your Details");
        $('#panel2').hide("", function() {
            $('#panel1').show("blind");
            $('#backBtn').hide();
        });

    }
    if ($('#panel3').is(":visible")) {
        $('#headerTitle').text("About Your Home");
        $('#panel3').hide("", function() {
            $('#panel2').show("blind");
        });
    }
    if ($('#panel4').is(":visible")) {
        $('#headerTitle').text("Water Use In The House");
        $('#panel4').hide("", function() {
            $('#panel3').show("blind");
            $('#nextBtn').show();
            $('#nextBtn').html("Next");
        });
    }
});

私が間違っている可能性があることについてのアイデアはありますか? 私はこれで少し怒っています、へえ:)ありがとう

編集 = 次のボタンを 2 回貼り付けて、戻るボタンに置​​き換えたことに気付きました。また、ボタンは部分ページではなく、インデックス ページにあります。

4

0 に答える 0