Como pegar o value de um radio button no beforeSendValidate

Como faço pra pegar a opção que foi clicada em um radio button, dentro de um arquivo beforeSendValidate?

Eu preciso pegar uma das opções que foi marcada e mostrar um formulário, assim que o formulário aparecer eu preciso validar os campos desse formulário, por isso estou usando o beforeSendValidate, caso o usuário tente enviar o processo para frente sem preencher os campos vai mostrar um erro, e sem o before ele conseguiria enviar sem preencher os campos.

Eu tentei pegar o value das opções do radio button utilizando o código abaixo, mas não aparece a opção que foi marcada no console.log.


 $("[name='opcao_motivo']").click(function (event) 
    {
        console.log("Before Send Validate: ");
        console.log("A opção marcada foi: "  + this.value);
    });

var value = form.getValue('opcao_motivo');

console.log("A opção marcada foi: " + value);

Tenta assim, acredito que vai funcionar.

Mas se for para verificar se esta marcado ou não sugiro usar o validateForm dessa maneira

var activity = getValue('WKNumState');

if(activity == NUMERO_DA_ATIVIDADE){ if(form.getValue('opcao_motivo') == ""){ throw("POR FAVOR, DEFINA SUA APROVAÇAO"); }

Não da pra utilizar form.getValue dentro do beforeSendValidate, mas vou salvar seu comentário pra eventos futuros.

Bom dia senhores, descobri como fazer para pegar o id do radio button dentro do beforeSendValidate, segue abaixo o código.


$('input[name="opcao_motivo"]').each(function (idx, item) 
{
    if ($(this).is(':checked')) 
    {
        console.log("Before Send Validate, A opção marcada foi:");
        console.log($(this).is(':checked'));
        console.log($(this).val());
        var opcaoMarcada = $(this).val();

        if (opcaoMarcada === "P") 
        {
            alert("Promoção selecionada via beforeSendValidate");

            //Valida campo que pesquisa por funcionario
            if ($('#funcionario').val() == null || $('#funcionario').val() == undefined || $('#funcionario').val() == "") 
            {
                $('#funcionario').parent('div').addClass('has-error');
                throw ("Você precisa selecionar o funcionario que vai receber o aumento de salario!");
            }

            else 
            {
                //Remove a classe de estilo erro "has-error"
                $('#funcionario').parent('div').removeClass('has-error');
            }
        }
    }
});

HTML


                <div class="row">
                    <hr class="separador_vermelho">
                    <h2 class="titulo">
                        <i class="fluigicon fluigicon-enrollment-verified icon-md"></i>
                        Motivo do Aumento de Salário
                    </h2>

                    <div class="form-group col-md-3 col-sm-6 col-xs-12">
                        <label>Motivo</label>

                        <div class="custom-radio custom-radio-primary">
                            <input type="radio" name="opcao_motivo" value="P" id="radio2">
                            <label for="radio2">Promoção</label>
                        </div>

                        <div class="custom-radio custom-radio-primary">
                            <input type="radio" name="opcao_motivo" value="AC" id="radio3">
                            <label for="radio3">Alteração de cargo</label>
                        </div>
                    </div>
                </div>

Não precisa do for


const opcaoMarcada = $('input[name="opcao_motivo"]:checked').val();

Aí só fazer verificar com as condições que você já fez.