0

次のコードがコンテンツの div 内に 2 つの div を非表示にしない理由がわかりません。誰かが私のコードをチェックできますか? コードは以下の div を隠しません。ありがとう

OK、これが私の編集したコードです。ロードを初期化すると、両方のフォームが選択タイプの下に表示されます。ディーラー/顧客を選択すると、正しいフォームが表示され、タイプを選択すると、いずれかを選択した後に何も表示されません。最初にすべてを非表示にするにはどうすればよいですか? ありがとう

<div id="contentArea">
            <form action="xxxxx.php" method="post" onsubmit="return checkStuff();" enctype="multipart/form-data">
                Warranty Registration Type:<br/>
                <select id="select"> 
                    <option value ="#blank">Select Type</option>
                    <option value ="#dealerform">Dealer</option>
                    <option value ="#customerform">Customer</option>
                </select>
                <br/>
                <br/>
                <div id="dealerform">
                    Dealer Name:   <input type="text" name="dealername"> <br/>
                    Dealer Address:  <input type="text" name="dealeradd"> <br>
                </div>
                <div id="customerform">
                    First Name:  <input type="text" name="firstname"> <br>
                    Last Name:  <input type="text" name="lastname"> <br>
                </div>
                <script>
                $(document).ready(function(){
                    $('#select').change(function(){
                        $('#dealerform,#customerform').hide();
                        $($(this).find('option:selected').attr('value')).show();
                    });
                });
                </script>
4

2 に答える 2

3

おそらく、変更イベントで使用する id 'select' が select にないためです。

                <select id="select"> 
                    <option value ="#dealerform">Dealer</option>
                    <option value ="#customerform">Customer</option>
                </select>
于 2013-04-07T05:35:02.627 に答える
0

ねえ、あなたはこのように書くべきです

 $($(this).find('option:selected').attr('value')).show();

これの代わりに

 $($(this).find('option:selected').attr('id')).show();

対応する div がもちろん非表示になるように、他の人が select の id を追加するか、select の前に # を削除する必要があると言った

$('select').change(....)
于 2013-04-07T05:38:11.937 に答える