Associate Label in If

Asked

Viewed 64 times

0

I have 3 DropDownList, take their values, multiple and display result. However, I do not want to display this information in numerical format, but rather a label, as well as mineDropDownList.

They are Enum, which has its values, but when it comes to exhibiting label.

I want to do the same with this field where I display the multiplication value.

Like, if my result is > 100 it should display very serious, if < 100 && >= 76 serious, etc. But I don’t know how to do that. Someone can give me a help?

function UpdateClassificacao() {
    var freq = $('select[name="Frequencia"]').val();
    var grav = $('select[name="Gravidade"]').val();
    var cont = $('select[name="Controle"]').val();

    console.log('freq: ', freq);
    console.log('grav: ', grav);
    console.log('cont: ', cont);

    if (freq && grav && cont) {
        var resultado = (freq * grav * cont);
        $('input[name="Classificacao"]').val(resultado);

        //Grave:
        //    if (resultado > 100) { alert("Gravissimo") }


        //if (resultado < 100 && resultado <= 76) { alert("Grave") }
        //if (resultado < 75 && resultado >= 51) { alert("Moderado") }
        //if (resultado > 26 && resultado <=50) { alert("Leve") }
        //if (resultado <= 25) { alert("Menor") }


    } else {
        $('input[name="Classificacao"]').val('-');
    }
}

$(function () {
    if ($('input[name="Classificacao"]').val() == '') {
        $('input[name="Classificacao"]').val('-');
    }

    $('select[name="Frequencia"]').on('selectmenuchange', function () {
        UpdateClassificacao();
    });

    $('select[name="Gravidade"]').on('selectmenuchange', function () {
        UpdateClassificacao();
    });

    $('select[name="Controle"]').on('selectmenuchange', function () {
        UpdateClassificacao();
    });
});

1 answer

0


It would be good to include the HTML code in your question for the preview to get better. I hope the code below helps and is what you want. Note: Preferably always using id in tags and selecting by them as follows $("#tagId")

function UpdateClassificacao() {
        var freq = $('select[name="Frequencia"]').val();
        var grav = $('select[name="Gravidade"]').val();
        var cont = $('select[name="Controle"]').val();

        console.log('freq: ', freq);
        console.log('grav: ', grav);
        console.log('cont: ', cont);

        if (freq && grav && cont) {
            var resultado = (freq * grav * cont);
            
            // adicione a linha a seguir caso esteja utilizando input
            $('input[name="Classificacao"]').val(verificaResultado(resultado));
            // adicione a linha a seguir caso esteja utilizando label
            //  $('#labelId').innerHTML = verificaResultado(resultado);

        } else {
            $('input[name="Classificacao"]').val('-');
        }
    }
    
    //adicione o seguinte metodo com a logica de classificacao
    //metodo que ira retornar a classificacao que entrara no input
    function verificaResultado(resultado) {
        if(resultado > 100) {
          return "Gravissimo";
        } else if (resultado < 100 && resultado <= 76) { 
          return "Grave";
        } else if (resultado < 75 && resultado >= 51){
          return "Moderado";
        } else if (resultado > 26 && resultado <=50) {
          return "Leve";
        } else {
          return "Menor";
        }
    }

    $(function () {
        if ($('input[name="Classificacao"]').val() == '') {
            $('input[name="Classificacao"]').val('-');
        }

        $('select[name="Frequencia"]').on('selectmenuchange', function () {
            UpdateClassificacao();
        });

        $('select[name="Gravidade"]').on('selectmenuchange', function () {
            UpdateClassificacao();
        });

        $('select[name="Controle"]').on('selectmenuchange', function () {
            UpdateClassificacao();
        });
    });

  • Thank you very much, gave me a very good direction. I managed to solve

Browser other questions tagged

You are not signed in. Login or sign up in order to post.