联系表格 7 checkbox Check

Contact form 7 checkbox Check

我的联系表 7 个复选框元素是这样的,

[checkbox vitesturu id:checkbox3 use_label_element exclusive "Engelli"]

[checkbox vitesturu id:checkbox2  use_label_element exclusive "Manuel Vites (Düz)"]

我想在单击复选框时将值打印到输入值。

<input type="text" id="textbox2" />

我用的js代码是这样的

$(document).ready(function() {   
        // Returns male in textbox2 if checkbox2 checked.
        $('#checkbox2').click(function() {
            if ($('#checkbox2').is(":checked") == true) {
                $('#textbox2').val('Male');
            } else {
                $('#textbox2').val('');
            }
        });
     
        // Returns female in textbox2
        // if checkbox2 checked.
        $('#checkbox3').change(function() {
            if ($('#checkbox3').is(":checked") == true) {
                $('#textbox2').val('Female');
            } else {
                $('#textbox2').val('');
            }
        });
    });

但是,这不起作用。我想我不能 select 复选框组件。有什么问题?

您需要直接在复选框输入上勾选 :checked,但 Contact Form 7 将 id 添加到包装元素中。

解决方法是这样的:

$(document).ready(function() {
    // Returns male in textbox2 if checkbox2 checked.
    $('#checkbox2').change(function() {
        // CHANGED THIS SELECTOR
        if ($('#checkbox2 input').is(':checked')) {
            $('#textbox2').attr('value', 'Male');
        } else {
            $('#textbox2').attr('value', '');
        }
    });

    // Returns female in textbox2
    // if checkbox2 checked.
    $('#checkbox3').change(function() {
        // CHANGED THIS SELECTOR
        if ($('#checkbox3 input').is(':checked')) {
            $('#textbox2').attr('value', 'Female');
        } else {
            $('#textbox2').attr('value', '');
        }
    });

});