如何使用jQuery处理两个复选框
How to work with two checkbox using jQuery
我想显示一个包含公司详细信息输入的div,如果用户检查输入YES,则显示div,如果使用者检查输入NO,则隐藏div。
我已经为输入复选框YES写了一些第一个代码,它运行良好,但如果输入NO是check,div仍然存在,我想隐藏它并取消选中YES输入复选框。
有人帮我修改剧本。
JavaScript:
$(document).ready(function (e) {
$("#yes").click(function () {
if($(this).is(":checked")) {
$("#companydetials").show();
} else {
$("#companydetials").hide();
}
})
});
HTML:
<p>Do you have a company?
<input name="comorno" type="checkbox" id="yes" form="signupform"> Yes
<input type="checkbox" name="comorno" id="no">No</p>
您需要单选按钮。请尝试以下代码。
$(document).ready(function (e) {
$("input[name=comorno]").change(function () {
if($(this).is("#yes")) {
$("#companydetials").show();
} else {
$("#companydetials").hide();
}
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Do you have a company?
<input name="comorno" type="radio" id="yes" value="" form="signupform" checked> Yes
<input type="radio" name="comorno" id="no">No</p>
<div id="companydetials">
Company Details Here
</div>
或者,如果在这种情况下使用复选框是必要的,你可以这样做——
$(document).ready(function (e) {
$("input[name^=comorno]").change(function () {
if($(this).is("#yes")) {
$("#companydetials").show();
$("#no").prop("checked", false);
} else {
$("#companydetials").hide();
$("#yes").prop("checked", false);
}
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>Do you have a company?
<input name="comorno[]" type="checkbox" id="yes" value="" form="signupform" checked> Yes
<input name="comorno[]" type="checkbox" id="no">No</p>
<div id="companydetials">
Company Details Here
</div>
检查这个jsfiddle示例-http://jsfiddle.net/ko64a3a8/
<input name="check_status" type="checkbox" class="mycheckbox" value="yes"/>
<div id="myDiv">text</div>
<script>
$(function(){
$('.mycheckbox').change(function(){
if($(this).is(':checked')){
$('#myDiv').show();
}else{
$('#myDiv').hide();
}
})
});
</script>
或者如果你想要"是"answers"否"选项
<label for="statYes">Yes</label>
<input name="check_status" id="statYes" type="checkbox" class="mycheckbox" value="yes"/>
<label for="statNo">No</label>
<input name="check_status" id="statNo" type="checkbox" class="mycheckbox" value="no"/>
<div id="myDiv">text</div>
<script>
$(function(){
$('#myDiv').hide();
$('.mycheckbox').change(function(){
if($(this).is(':checked')){
if($(this).val() == 'yes') {
$('#statNo').removeAttr('checked');
$('#myDiv').show();
}else{
$('#statYes').removeAttr('checked');
$('#myDiv').hide();
}
}
})
});
</script>
UPD:这是一个例子http://jsfiddle.net/3L3b580h/当您单击"是"时,它会显示div,并取消选中"否"(如果选中)和向后
$(document).ready(function (e) {
$('input[name="comorno"]').each(function()
{
$(this).change(function()
{
$('input[name="comorno"]').prop('checked',false);
$(this).prop('checked',true);
if($('#yes').is(':checked')) {
$('#companydetails').show()
} else {
$('#companydetails').hide()
}
});
});
});
勾选此主题:使用javascript 使复选框的行为类似于单选按钮
Fiddle:http://jsfiddle.net/ojensc2y/
相关文章:
- 我有两个复选框,只有一个可以点击
- jQueryui上的两个复选框选中需要按钮激活和未选中禁用
- 防止具有相同选项的两个复选框上的重复选项
- 如果选中两个复选框,则条件在 jQuery 中不起作用
- 在两个复选框之间切换
- 卡在检查两个复选框中的任何一个是否被选中
- 如何使用jQuery检查两个复选框何时都有非空值
- 在 jquery 中序列化两个复选框
- 如果选中了两个复选框,请不要这样做
- 显示两个复选框元素的标题之间的数学差异
- 将两个复选框绑定在一起
- 如何使用jQuery处理两个复选框
- MVC中有两个复选框,但每次只允许一个复选框
- 选中两个复选框时启用输入提交按钮
- 如果至少选中了两个复选框,如何启用提交按钮
- 测试是否至少选中了两个复选框,然后将值插入数据库
- 只有当另外两个复选框未选中时,才取消选中复选框
- 在React JS中,一次点击选中两个复选框
- 如果文本框为空并且复选框(un)被选中,则选中这两个复选框
- 在选中两个复选框时没有进入正确的循环