1

以下のようなラジオボタンがチェックされているときにdivセクションを折りたたむ方法を知りたいだけです

セクションを折りたたむためにチェックしたいラジオボタン

<div>
    @Html.RadioButtonFor(model => model.Transaction.PaymentProvider, "2")
    @Html.LabelFor(model => model.Transaction.PaymentProvider, "Pay with Credit Card")
</div>

上のラジオボタンがチェックされている場合、折りたたまれたいセクション

<div class="panel-body">
    <table border="0" cellspacing="0" cellpadding="0" align="middle">
        <tr>
            <td width="100" border="0" class="paylabel">Card Number:</td>
            <td colspan="3" width="335" border="0" class="paylabel">
                <div class="editor-field">
                    @Html.EditorFor(model => model.Transaction.CreditCard.CardNumber)
                    @Html.ValidationMessageFor(model => model.Transaction.CreditCard.CardNumber)
                </div>
            </td>
        </tr>
    </table>
</div>

私はブートストラップを使用しており、アコーディオン クラスを試しましたが、それはハイパーリンクでのみ機能し、そのラジオボタンがチェックされている場合に条件を作成する方法がわかりません。

<label class="radio">
<input checked="checked" data-val="true" data-val-number="The field PaymentProvider must be a number." data-val-required="The PaymentProvider field is required." id="Transaction_PaymentProvider" name="Transaction.PaymentProvider" type="radio" value="1"/>
<label for="Transaction_PaymentProvider">Pay with PayPal</label>
 <input id="Transaction_PaymentProvider" name="Transaction.PaymentProvider" type="radio" value="2" />
<label for="Transaction_PaymentProvider">Pay with Credit Card</label>
 </label>

これはIEからデバッグされているコードです

4

1 に答える 1

1

ここから情報を使用すると、ラジオボタンのjQueryクリックイベントが発生しません

$("input[name=Transaction_PaymentProvider]").click(function(){
    if($('input:radio[name=Transaction_PaymentProvider]:checked').val() == "2"){
        $('.panel-body').show();
    }else{
        $('.panel-body').hide();
    }
}

ラジオ ボタンに生成される名前を確認する必要があります。名前が になるかどうかは覚えていません。また _。 http://api.jquery.com/show/およびhttp://api.jquery.com/hide/では、効果をカスタマイズする方法について説明しています。うまくいけば、これが役に立ちます。

于 2013-09-26T22:45:49.663 に答える