Only get the lang of the clicked class

Asked

Viewed 62 times

0

I need to take only the lang value of the clicked item, but only takes the first value. I don’t know how to solve

php:

    $i = 0;
    while($rowFoto = mysqli_fetch_array($matrizFoto))
    {        
        echo "<div id='blockfoto'>";
        echo "<img class='fotoaltera mostraimagem' src='upload/Produtos/".$rowFoto["FotoProduto"]."'/><br/><br/>";
        echo "<label class='file' for='filealtera'>Alterar</label>"; 
        echo "<input type='hidden' class='amostra' lang='$i'/>";
        echo "<input type='file' name='filealtera' id='filealtera' class='filealtera'>";
        echo "</div>";
        $i++;
    }

Script:

$('.filealtera').change(function(){ 
    var classe = $('.amostra').attr("lang");
    readURL(this);
    alert(classe);
});

1 answer

0


Working:

$('.filealtera').change(function(){
    // $(this) indica este elemento (elemento que disparou o evento change)
    // parent().find('.amostra') diz para procura um elemento filho que
    // contenha a classe .amostra e desse elemento procura o atributo lang
    var classe = $(this).parent().find('.amostra').attr("lang");
    //readURL(this);
    alert("Lang: " + classe);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="blockfoto"><img class="fotoaltera mostraimagem" src="upload/Produtos/1"><br><br><label class="file" for="filealtera">Alterar</label><input class="amostra" type="hidden" lang="1"><input name="filealtera" id="filealtera" class="filealtera" type="file"></div>

<div id="blockfoto"><img class="fotoaltera mostraimagem" src="upload/Produtos/1"><br><br><label class="file" for="filealtera">Alterar</label><input class="amostra" type="hidden" lang="2"><input name="filealtera" id="filealtera" class="filealtera" type="file"></div>

<div id="blockfoto"><img class="fotoaltera mostraimagem" src="upload/Produtos/1"><br><br><label class="file" for="filealtera">Alterar</label><input class="amostra" type="hidden" lang="3"><input name="filealtera" id="filealtera" class="filealtera" type="file"></div>

<div id="blockfoto"><img class="fotoaltera mostraimagem" src="upload/Produtos/1"><br><br><label class="file" for="filealtera">Alterar</label><input class="amostra" type="hidden" lang="4"><input name="filealtera" id="filealtera" class="filealtera" type="file"></div>

you made the right changes?

Browser other questions tagged

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