我有相同的功能检查表单中的 2 个不同的文本输入字段。如果选中复选框,我需要在文本输入字段之一上运行该函数。如果未选中该复选框,我需要在其他文本输入字段上运行该函数。
这是复选框:
<input id="use_different_addresses" type="checkbox" value="1" name="use_different_addresses" />Use different address<br />
默认情况下,该复选框未被选中。未选中时,我需要运行此函数:
$('#customer_country_name').change(function() {
if ($('#customer_country_name').val() != 'United States') {
$('.radio_us').hide();
}
else {
$('.radio_us').show();
}
});
当选中该复选框时,我需要运行此函数:
$('#shipping_country_name').change(function() {
if ($('#customer_country_name').val() != 'United States') {
$('.radio_us').hide();
}
else {
$('.radio_us').show();
}
});
谢谢!
最佳答案
为什么不直接在每个方法的顶部添加一个检查,以根据已检查
状态确定它是否应该运行
$('#customer_country_name').change(function() {
if (!$('#use_different_addresses').is(':checked')) {
...
}
}
$('#shipping_country_name').change(function() {
if ($('#use_different_addresses').is(':checked')) {
...
}
}
编辑
OP 在评论中澄清,他们希望在选中复选框时隐藏某些单选框。这是我推荐的解决方案
$('#use_different_addresses').change(function() {
if ($('#use_different_addresses').is(':checked')) {
$('.radio_us').hide();
} else {
$('.radio_us').show();
}
});
关于jquery - 根据复选框被选中或未选中更改功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5502519/