I'm doing a check on my page so that the user is always required to select a cor
and a tamanho
but my script is not working correctly, even selecting the color and clicking the add alert
asks me to cor
be selected.
What I have is this, the options for cor
and tamanho
:
<div class="tovar_color_select">
<p>SELECIONE A COR</p>
<?php foreach($ResCor as $ProdCor) { ?>
<a class="divCor" IdCor="<?php echo $ProdCor->IdCor; ?>" style="background-color:<?php echo $ProdCor->Cor ?>;"></a>
<?php } ?>
</div>
<div class="tovar_size_select">
<p>SELECIONE O TAMANHO</p>
<?php foreach($ResTamanho as $ProdTam) { ?>
<a class="divTamanho" IdTamanho="<?php echo $ProdTam->IdTamanho; ?>" ><?php echo $ProdTam->Nome; ?></a>
<?php } ?>
</div>
Applying the borders in the color and size options:
.selBordaCor { border: solid 1px #363131 !important; } .selBordaTamanho { border: solid 1px #363131 !important; } // APLICANDO BORDA PARA COR $(document).ready(function(){ $(".divCor").on("click", function() { $(".divCor").each(function(){ $(this).removeClass("selBordaCor"); }) $(this).addClass("selBordaCor"); }) }) // APLICANDO BORDA PARA TAMANHO $(document).ready(function(){ $(".divTamanho").on("click", function() { $(".divTamanho").each(function(){ $(this).removeClass("selBordaTamanho"); }) $(this).addClass("selBordaTamanho"); }) })
Doing the check and giving the alert:
$(document).ready(function () { $('#Finalizar').click(function () { if (!$(this).hasClass("selBordaCor")) { jAlert('COR\nPor favor, selecione a cor para o modelo.', 'Atenção'); //alert("COR\nPor favor, selecione a cor para o modelo."); return false; } else if (!$(this).hasClass("selBordaTamanho")) { jAlert('TAMANHO\nPor favor, selecione o tamanho para o modelo.', 'Atenção'); //alert("TAMANHO\nPor favor, selecione o tamanho para o modelo."); return false; } else { // SE TUDO DE CERTO } }); });
I'm using hasclass
to check if the borders are being applied, but it did not work.
The page can be seen here: Access the sample page