recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - si l'instruction dans l'événement de changement dans jquery échoue

<p class="add-new-img mt-2">
    <select name="picType" id="img-type">
        <option value="0">彩色</option>
        <option value="1">黑白</option>
    </select>
</p>
<p class="add-new-img mt-2">
    <select name="picType" id="img-type-classify">
    </select>
</p>

Deux listes déroulantes, attribuez à la première liste déroulante un événement de changement, demandez une adresse ajax différente et modifiez les données de la deuxième liste déroulante

$("#img-type").change(function(){
        console.log($(this).val())
        if($(this).val()===1){
            console.log(1)
            $.ajax({
            type : 'GET',
            data: {
                'type': '2',
                "type_classify":1
            },
            url: "/Type/getTypeList",
            dataType: "json",
            success: function(data){
                var color = ["彩色","黑白"]

                var options='';
                for(var i=0;i<data.data.length;i++){
                     var num = Number(data.data[i].type_classify)
                    options += '<option value='+data.data[i].id+'>'+data.data[i].id+data.data[i].type_name+"("+color[num]+")"+'</option>';                                     
                }
                $("#img-type-classify").html(options);
                },
              error:function(msg){
                console.log(msg);
            },
        });
        }
        if($(this).val()===0){
            console.log(0)
            $.ajax({
            type : 'GET',
            data: {
                'type': '2',
                "type_classify":0
            },
            url: "/Type/getTypeList",
            dataType: "json",
            success: function(data){
                var color = ["彩色","黑白"]

                var options='';
                for(var i=0;i<data.data.length;i++){
                     var num = Number(data.data[i].type_classify)
                    options += '<option value='+data.data[i].id+'>'+data.data[i].id+data.data[i].type_name+"("+color[num]+")"+'</option>';                                     
                }
                $("#img-type-classify").html(options);
                },
              error:function(msg){
                console.log(msg);
            },
        });
        }
    })

Jugez la valeur de la première liste déroulante et demandez différentes interfaces d'arrière-plan. Cependant, il est normal que la console ait $(this).val(). Cependant, la console n'a aucun effet dans l'instruction if. la raison ?

巴扎黑巴扎黑2771 Il y a quelques jours667

répondre à tous(2)je répondrai

  • 大家讲道理

    大家讲道理2017-05-19 10:12:24

    if($(this).val()==='1')

    répondre
    0
  • 怪我咯

    怪我咯2017-05-19 10:12:24

    0 et 1 sont tous deux des chaînes, n'est-ce pas ? Vous avez utilisé ===, alors...

    répondre
    0
  • Annulerrépondre