复选框上的清除表单字段点击

时间:2017-04-22 21:26:41

标签: javascript jquery checkbox

我有一个表单,用户填写详细信息并可以查看结算明细是否相同。在这种情况下,相同的数据将被复制到计费部分。这个脚本工作得很好。 但是,如果用户意外点击,则在点击复选框后会删除数据"结算信息不同"。我使用的是类似的脚本,但我没有复制,而是试图添加val("")。你能告诉我,我做错了吗?

复制脚本:

jQuery(document).ready(function($) {
    $('input#choice_2_42_1').click(function() {
        if($(this).is(':checked')) {
            $('#input_2_35').val($('#input_2_9').val());
            $('#input_2_36').val($('#input_2_10').val());
            $('#input_2_37').val($('#input_2_4_1').val());
            $('#input_2_38').val($('#input_2_4_3').val());
            $('#input_2_39').val($('#input_2_4_5').val());
            $('#input_2_40').val($('#input_2_33').val());
            $('#input_2_41').val($('#input_2_34').val());
        };
    });
});

删除代码:

jQuery(document).erase(function($) {
    $('input#choice_2_20_1').click(function() {
        if($(this).is(':checked')) {
            $('#input_35').val("");
            $('#input_36').val("");
            $('#input_37').val("");
            $('#input_38').val("");
            $('#input_39').val("");
            $('#input_40').val("");
            $('#input_41').val("");
        };
    });
});

2 个答案:

答案 0 :(得分:1)

将擦除功能的内容移动到就绪功能,然后它应该有效。

查看example here

$(document).ready(function() {
    $('#check').click(function() {
       if($(this).is(':checked')) {
          $('#text2').val($('#text').val());
        };
    });

   $('#check2').click(function() {
       if($(this).is(':checked')) {
           $('#text2').val('');
       };
   });
});

答案 1 :(得分:1)

如果你看到,在复制代码中,你有这样的id

#input_2_35
#input_2_36

在擦除时,你有不同的身份

#input_35
#input_36

只需更改您的擦除代码以适合ID

jQuery(document).erase(function($) {
    $('input#choice_2_20_1').click(function() {
        if($(this).is(':checked')) {
            $('#input_2_35').val("");
            $('#input_2_36').val("");
            $('#input_2_37').val("");
            $('#input_2_38').val("");
            $('#input_2_39').val("");
            $('#input_2_40').val("");
            $('#input_2_41').val("");
        };
    });
});