Jquery 取消选中复选框时清除特定表单元素

Jquery 取消选中复选框时清除特定表单元素,jquery,forms,input,checkbox,Jquery,Forms,Input,Checkbox,有谁能给我一个基本的例子,当复选框被取消选中时,如何清除特定的表单输入(每个表单输入都有自己的唯一ID)?我尝试了一些解决方案,但似乎无法可靠地实现这一点。我需要这只发生在盒子未选中时,这似乎给我带来了问题 在复选框的onClick()中,调查复选框的值,然后执行您想要的任何操作,包括清除表单。这是否满足您的需要?在复选框的onClick()中,调查复选框的值,然后执行您想要的任何操作,包括清除表单。这是否满足您的需要?一个粗略的例子可能是 <input type='checkbox' i

有谁能给我一个基本的例子,当复选框被取消选中时,如何清除特定的表单输入(每个表单输入都有自己的唯一ID)?我尝试了一些解决方案,但似乎无法可靠地实现这一点。我需要这只发生在盒子未选中时,这似乎给我带来了问题

在复选框的onClick()中,调查复选框的值,然后执行您想要的任何操作,包括清除表单。这是否满足您的需要?

在复选框的onClick()中,调查复选框的值,然后执行您想要的任何操作,包括清除表单。这是否满足您的需要?

一个粗略的例子可能是

<input type='checkbox' id='clear_text' />
<input type='text' id='text_box' value='Contents' />
<script>
$(function(){
    $("#clear_text").click(function(){
        if(!$(this).is(":checked")){ //checks if the checkbox/this is selected or not
            $("#text_box").val(""); //empty the input value
        } else { } //nothing
    });
});
</script>

$(函数(){
$(“#清除文本”)。单击(函数(){
if(!$(this).is(“:checked”){//检查是否选中了复选框/this
$(“#文本框”).val(“”;//清空输入值
}否则{}//什么都没有
});
});

一个粗略的例子可能是

<input type='checkbox' id='clear_text' />
<input type='text' id='text_box' value='Contents' />
<script>
$(function(){
    $("#clear_text").click(function(){
        if(!$(this).is(":checked")){ //checks if the checkbox/this is selected or not
            $("#text_box").val(""); //empty the input value
        } else { } //nothing
    });
});
</script>

$(函数(){
$(“#清除文本”)。单击(函数(){
if(!$(this).is(“:checked”){//检查是否选中了复选框/this
$(“#文本框”).val(“”;//清空输入值
}否则{}//什么都没有
});
});

非常简单的示例,让您开始学习。使用jquery1.7.1

HTML:


非常简单的例子,让你开始。使用jquery1.7.1

HTML:

这是工作小提琴


这是工作小提琴

哪一部分给你带来麻烦?给我们看一些代码。什么不起作用?哪个部分给你带来麻烦?给我们看一些代码。什么不起作用?
单击
(和
更改
,这可能是一个更好的选择)事件在
选中
状态更改后触发;因此,“如果选中,那么我们知道单击将‘取消选中’”是不正确的。另外,
this.checked
工作得非常好-不需要
$(this.is(“:checked”)
。是的,我想那是我的原始代码,我不久就编辑掉了。我也有点喜欢$(this).is(“:checked”)语法。它读起来很好:)喜欢这种语法并不意味着它不那么不必要。你最终写了更多的代码——创建一个对象并执行一个函数调用——以获得零增益。这个答案对我来说非常有效。其他javascript也可以工作,但与其他一些javascript存在冲突。谢谢
单击
(和
更改
,这可能是一个更好的选择)事件在
选中
状态更改后触发;因此,“如果选中,那么我们知道单击将‘取消选中’”是不正确的。另外,
this.checked
工作得非常好-不需要
$(this.is(“:checked”)
。是的,我想那是我的原始代码,我不久就编辑掉了。我也有点喜欢$(this).is(“:checked”)语法。它读起来很好:)喜欢这种语法并不意味着它不那么不必要。你最终写了更多的代码——创建一个对象并执行一个函数调用——以获得零增益。这个答案对我来说非常有效。其他javascript也可以工作,但与其他一些javascript存在冲突。谢谢我不得不使用另一个发布的解决方案,因为它与其他一些正在使用#chk的js冲突。但开箱即用的做法完全符合预期。谢谢你抽出时间!我不得不使用另一个发布的解决方案,因为它与其他一些正在使用#chk的js冲突。但开箱即用的做法完全符合预期。谢谢你抽出时间!
$('#check1').on('click', function () {
    if (!$(this).is(':checked')) {
        $('#in1, #in2').val('');
    }
});
​$(document).ready(function(){
    $('#chk').live('change',function(){
     if(!$(this).is(':checked'))
       $('input').val('');              
    });
})​;​