在 JavaScript 上分离按钮逻辑

separating button logic on javascript

本文关键字:按钮 分离 JavaScript      更新时间:2023-09-26

我遇到的问题是我无法区分这两个按钮。一个按钮会影响另一个按钮。这是代码:

%input.radio-button{:name => "donor_claim_phase-c#{index}", :type => "radio", :id => "donor_claim_phase-c#{index}" }
%input.radio-button{:name => "global_start_phase-c#{index}", :type => "radio", :id => "global_start_phase-c#{index}" }

我拥有的Javascript是这样的:

$(document).on('click', 'input[type="radio"]', function(e){
    var selectedRadioName = $(this).attr('name');
    disableNonSelectedRadioButtons(selectedRadioName);
});

问题是,此函数禁用两者,因为两者都是 type="radio"。有没有其他方法可以区分这两者?有没有办法让我做两个函数,我给出一个type=radio和其他一些因素来区分它们?

function disableNonSelectedRadioButtons(selectedRadioButton) {
    $('#payer-contract-global-table .clone-target').each(function (i)  {
        var radioName = 'donor_claim_phase' + '-c' + i;
        if (selectedRadioButton == radioName) {
            $('#' + radioName).prop("checked", true);
            $('#' + radioName).prop("value", true);
            $('#payer_contract_donor_claim_phase').prop("value", (i+1));
        }
        else {
            $('#' + radioName).prop("checked", false);
            $('#' + radioName).prop("value", false);
        }
    });
}

单选按钮就像汽车收音机:按下一个按钮,其他按钮就会弹出。如果要进行多个选择,请使用 n 个单独的按钮。