我是一个完整的新手在这里-所以我会尽我所能解释。我有一个表格,我要求用户选择他们最近的城市(无线电输入),如果他们选择“伦敦”从选项,那么我需要3x div ID显示其中包含一些其他无线电输入。我所有的代码都有唯一的ID。
我的问题是,我可以让div显示,但如果你试图选择任何电台选项,它会自动隐藏div,无论你选择什么。
这是我的表单HTML,其中“伦敦”是一个选项(我有自定义单选按钮-因此跨度)
<label class="container" style="line-height: 1.5;">
<input type="radio" id="NEAREST_CITY1" name="cd_NEAREST_CITY" value="London" initial="@NEAREST_CITY@" readonly="">
London
<span class="radioSelect"></span>
</label><label class="container" style="line-height: 1.5;">
<input type="radio" id="NEAREST_CITY2" name="cd_NEAREST_CITY" value="Manchester" initial="@NEAREST_CITY@" readonly="">
Manchester
<span class="radioSelect"></span>
</label><label class="container" style="line-height: 1.5;">
<input type="radio" id="NEAREST_CITY3" name="cd_NEAREST_CITY" value="Edinburgh" initial="@NEAREST_CITY@" readonly="">
Edinburgh
<span class="radioSelect"></span>
</label>
字符串
我的隐藏div是这样的-我不能在1 div Div 1下有这些:
<div id="London1" style="display:none">
<p style="margin: 0px; line-height: 1.5; padding-top: 20px;"><font face="belleza, sans-serif"><font><font style="font-size: 16px;"><b>Let us know your preferred London Location:</b></font></font></font></p>
</div>
型
第二区:
<div id="London2" style="display:none">
<label class="container" style="line-height: 1.5;">
<input type="radio" id="PREFERRED_LONDON1" name="cd_PREFERRED_LONDON" value="Air Street" initial="@PREFERRED_LONDON@" readonly="">
Air Street
<span class="radioSelect"></span>
</label><label class="container" style="line-height: 1.5;">
<input type="radio" id="PREFERRED_LONDON2" name="cd_PREFERRED_LONDON" value="Borough" initial="@PREFERRED_LONDON@" readonly="">
Borough
<span class="radioSelect"></span>
</label>
</div>
型
第三区:
<div id="London3" style="display:none">
<label class="container" style="line-height: 1.5;">
<input type="radio" id="PREFERRED_LONDON3" name="cd_PREFERRED_LONDON" value="Guildhall" initial="@PREFERRED_LONDON@" readonly="">
Guildhall
<span class="radioSelect"></span>
</label>
<label class="container" style="line-height: 1.5;">
<input type="radio" id="PREFERRED_LONDON4" name="cd_PREFERRED_LONDON" value="Knightsbridge" initial="@PREFERRED_LONDON@" readonly="">
Knightsbridge
<span class="radioSelect"></span>
</label>
</div>
型
然后是JavaScript/jQuery(不确定这是什么TBH -掉进了兔子洞,不记得我在哪里找到了类似的例子)
<script>
$(document).ready(function() {
$('input[type="radio"]').click(function() {
if($(this).attr('id') == 'NEAREST_CITY1') {
$("div[id*=London]").show();
}
else {
$("div[id*=London]").hide();
}
});
});
</script>
型
2条答案
按热度按时间sf6xfgos1#
这里是一个清理的版本。我已经改变了事件监听器只听点击的名称=cd_NEAREST_CITY],否则任何点击任何电台将触发切换
注意,我给每个div一个class=“city”,这样就可以一次性隐藏它们。
我还从收音机中删除了无效的只读,并将字体改为样式。
个字符
voase2hg2#
如果你在一个表单密集的网站上工作,我会考虑使用一些免费的开源库来处理像forms.js这样的表单。
个字符