J'ai l'entrée [type = "file"] avait plusieurs options et le 'div' est créé lorsque je sélectionne les images comme ci-dessous.

<div id="filenameList" style="width:400px">
    <div class="not yet" style="margin : 30px"; position : relative>
        <img src="data:image/jpeg;base64,.." width="100%" id="tmp_screenshots">
    </div>
    <div class="not yet" style="margin : 30px"; position : relative>
        <img src="data:image/jpeg;base64,.." width="100%" id="tmp_screenshots">
    </div>
    <div class="not yet" style="margin : 30px"; position : relative>
        <img src="data:image/jpeg;base64,.." width="100%" id="tmp_screenshots">
    </div>
</div>

J'ai sélectionné les 3 images et les «divs» sont créés automatiquement comme je l'ai dit plus haut. Je veux vérifier la taille de 3 images.

C'est mon code que j'ai pensé.

if($('#tmp_screenshots').width() == 340 && $('#tmp_screenshots').height() == 340) { 
    alert_success();
    return true;
}else {
    alert_screenshots_size_err();
    return false;
}

Cependant, ce code vient de vérifier le seul haut de l'image. Je connais la raison, mais comment puis-je résoudre ce problème pour vérifier toutes les images qui ont le même identifiant.

("#filenameList"," #tmp_screenshots").each(function() {
     if ($(this).width() !== 340 && $(this).height() !== 340) {
         alert("false");
     }else {
         alert("true");
     }
});

Je sais que ce code ne fonctionne pas. Comment puis-je résoudre ce problème correctement. Quelqu'un le sait-il? ou avoir une meilleure idée?

-2
홍의숙 17 juil. 2015 à 09:59

2 réponses

Meilleure réponse

id doit toujours être unique.

Vous pouvez parcourir les images à l'aide du sélecteur d'élément.

$("img", "#filenameList").each(function() {
    if ($(this).width() !== 340 && $(this).height() !== 340) {
        alert("false");
    } else {
        alert("true");
    }
});

OU utilisez le même class au lieu de id.

<div id="filenameList" style="width:400px">
    <div class="not yet" style="margin : 30px" ; position : relative>
        <img src="data:image/jpeg;base64,.." width="100%" class="tmp_screenshots">
    </div>
    <div class="not yet" style="margin : 30px" ; position : relative>
        <img src="data:image/jpeg;base64,.." width="100%" class="tmp_screenshots">
    </div>
    <div class="not yet" style="margin : 30px" ; position : relative>
        <img src="data:image/jpeg;base64,.." width="100%" class="tmp_screenshots">
    </div>
</div>

Javascript:

$(".tmp_screenshots", "#filenameList").each(function() {
    if ($(this).width() !== 340 && $(this).height() !== 340) {
        alert("false");
    } else {
        alert("true");
    }
});
1
Tushar 17 juil. 2015 à 07:01

Jquery Selector: "# your id main div # your id img

Y a-t-il votre solution:

$("#filenameList #tmp_screenshots").each(function(index,element) {
     if ($(this).width() !== 340 && $(this).height() !== 340) {
         alert("false");
     }else {
         alert("true");
     }
   });
-1
Giau Huynh 17 juil. 2015 à 07:11