これは私のjqueryコードです
$(document).ready(function() {
$("div.imgDisp").hide();
$('[id="' + $(":radio:checked").val()+'"]').show();
$('input[name="rdNumber"]:radio').click(function() {
$("div.imgDisp").fadeOut('slow');
$('[id="' + $(this).val()+'"]').fadeIn('slow');
});
});
これはhtmlコードです
<div class="wrapper"> <strong><span>*</span> Number</strong>
<div class="formText">
<input type="radio" name="rdNumber" value="100" />100
<input type="radio" name="rdNumber" value="200" checked="checked"/>200
<input type="radio" name="rdNumber" value="300" />300</div>
</div>
<input type="radio" name="rdImage" value="preExisting" />Choose from images below
<div id="100" class="imgDisp">
<div class="heading">10x10</div>
<input type="radio" name="preExistingImage" id="100" value="10x10-1"
/>
<img src="1-1.png">
<input type="radio" name="preExistingImage" id="100" value="10x10-2" />
<img src="1-2.png">
</div>
<div id="200" class="imgDisp">
<div class="heading">10x20</div>
<input type="radio" name="preExistingImage" id="200" value="10x20-1"
/>
<img src="2-1.png">
<input type="radio" name="preExistingImage" id="200" value="10x20-2" />
<img src="2-2.png">
</div>
<div id="200" class="imgDisp">
<div class="heading">20x10</div>
<input type="radio" name="preExistingImage" id="200" value="20x10-1"
/>
<img src="3-1.png">
<input type="radio" name="preExistingImage" id="200" value="20x10-2" />
<img src="3-2.png" width="20" height="10">
</div>
コードは、id = 100のdivを表示している100ラジオボタンを選択すると正常に機能し、id = 200を選択すると、id=200の2つのdivが表示されます。ここでこのフィドルを確認してくださいhttp://jsfiddle.net/vDBDA/2/
現在、2つのクエリがあります。1。重複するIDを使用して、このコードのようなラジオボタンの選択で同様のタイプのdivを表示します
<div id="200" class="imgDisp">
正常に動作していますが、IDの重複が問題であることはわかっています。どうすれば修正できますか?
- ページが読み込まれると、デフォルトで番号200がチェックされます。このフィドルでは、ラジオボタン200に関連付けられたdivが表示されますが、実際のプログラミングとlocalhost/ブラウザでは表示されません。理由は何でしょうか。
あなたの助けはすべて黄金になります。よろしくお願いします