我有一个我正在为客户端构建的表单,我正在尝试这样做,当选择一组单选按钮时,禁用复选框列表,但如果选中复选框的单选按钮,则清除另一个单选按钮如果被选中。
以下是我正在使用的代码:
<form action="#">
<fieldset><legend>Activities</legend>
<input style="margin-right:0; margin-left:0;" type="radio" id="Golf" value="I would like to golf at The Breakers Ocean Course" name="activity" />
<label for="Golf">Golf - The Breakers Ocean Course</label>
<ul style="margin-top:0;">
<label for="club">Club Rental</label>
<input style="margin-right:0; margin-left:0;" type="radio" id="club-yes" value="Yes" name="clubrental" />
<label for="club-yes">Yes</label>
or
<input style="margin-right:0; margin-left:0;" type="radio" id="club-no" value="No" name="clubrental" />
<label for="club-no">No</label><br>
<input style="margin-right:0; margin-left:0;" type="radio" id="right-hand" value="Right Handed" name="clubhand" />
<label for="right-hand">Right Handed</label>
or
<input style="margin-right:0; margin-left:0;" type="radio" id="left-hand" value="Left Handed" name="clubhand" />
<label for="left-hand">Left Handed</label>
</ul>
<div style="clear:both;"> </div>
<input style="margin-right:0; margin-left:0;" type="radio" id="hometour" value="I would like to take the Home tour and Worth Avenue Shopping" name="activity" />
<label for="hometour">Home tour and Worth Avenue Shopping</label>
<div style="clear:both;"> </div>
<input style="margin-right:0; margin-left:0;" type="radio" id="museum" value="I would like to attend the Cars of Dreams Museum Tour" name="activity" />
<label for="museum">Cars of Dreams Museum Tour</label>
<div style="clear:both;"> </div>
<input style="margin-right:0; margin-left:0;" type="radio" id="spa" value="I would like to attend The Spa at the Breakers" name="activity" />
<label for="spa">Spa - The Spa at the Breakers</label>
<ul style="margin-top:5px;">
- Please select two treatments<br>
<div style="float:left; width:220px; margin-right:15px;">
<input type="checkbox" id="personal-retreat-massage" value="Personal Retreat Massage" name="treatment" onclick="setItems(this)">
<label for="personal-retreat-massage">Personal Retreat Massage</label>
</div>
<div style="float:left; width:220px; margin-right:15px;">
<input type="checkbox" id="simplicity-massage" value="Simplicity Massage" name="treatment" onclick="setItems(this)">
<label for="simplicity-massage">Simplicity Massage</label>
</div>
<div style="float:left; width:220px; margin-right:15px;">
<input type="checkbox" id="guerlain-classic-facial" value="Guerlain Classic Facial" name="treatment" onclick="setItems(this)">
<label for="guerlain-classic-facial">Guerlain Classic Facial</label>
</div>
<div style="float:left; width:220px; margin-right:15px;">
<input type="checkbox" id="cellular-enzyme-peel" value="Cellular Enzyme Peel" name="treatment" onclick="setItems(this)">
<label for="cellular-enzyme-peel">Cellular Enzyme Peel</label>
</div>
</ul>
</fieldset>
<center><input style="width:75px; height:25px; margin-bottom:25px;" type="submit" value="Submit" name="submit"></center>
</form
&GT; 我不能使用PHP所以这只能是Javascript。
谢谢。
答案 0 :(得分:0)
您可以尝试在未选择spa单选按钮时禁用复选框,并在选中它时启用它们。您可以检查无线电元素焦点的状态。我认为以下内容适用于您:
$('[type="radio"]').focus(function(){
if ($('#spa').prop('checked')) {// jQuery 1.7.2
$('[type="checkbox"]').removeAttr('disabled');
} else {
$('[type="checkbox"]').attr('disabled', 'disabled');
}
})
希望它有所帮助!
你应该查看jQuery文档!他们非常有帮助!
在您目前的情况下可能会有所帮助的一些事情是: