| Autor | Zpráva | ||
|---|---|---|---|
| PetrBK Profil |
Zdravím,
mohl bych poprosit o malou radu/pomoc... Mám několi tlačítek a potřebuji omzezit jejich výběr na tři (max). Kliknutím na tlačítko se do SESSION ukládá ID produktů pro jejich následné porovnávní. Omezení - vybrat více jak 3 produkty je sice ošetřeno na straně PHP, ale na tlačítka lze stále kliknout i po naplnění kapacity (3 produkty) a ty se pak zobrazují také jako vybrané, což je špatněa chaotické. Mohl by mi někdo poradit jak toto ošetřit, v JS tápu? <span class="button button_blue btm_compare_add" id="<?php echo $row['id']; ?>">Compare</span>
<span class="button button_blue btm_compare_add" id="<?php echo $row['id']; ?>">Compare</span>
<span class="button button_blue btm_compare_add" id="<?php echo $row['id']; ?>">Compare</span>
<span class="button button_blue btm_compare_add" id="<?php echo $row['id']; ?>">Compare</span>
<span class="button button_blue btm_compare_add" id="<?php echo $row['id']; ?>">Compare</span>
<script>
$(document).ready(function(){
$(".btm_compare_add").click(function(){
var $id_isa = (this.id);
$.ajax({
url: 'ajax__compare.php',
type: "GET",
data: 'id_isa='+$id_isa,
success: function(data) {
$('#compare_isa_indicator').html(data);
}
});
//alert(<?php echo count($_SESSION['compare_isa']); ?>);
var element = document.getElementById($id_isa);
element.classList.add("button_red");
element.classList.add("btm_compare_selected");
element.classList.remove("button_blue");
element.classList.remove("btm_compare_add");
document.getElementById($id_isa).innerHTML = "Selected";
});
});
</script>Děkuji a přeji hezký den Petr B. |
||
| Tomášeek Profil |
#2 · Zasláno: 2. 5. 2020, 05:59:52
PetrBK:
Pocet elementu (s konkretni třídou, atributem, ...) v js zjistíš pomoci .length. |
||
| PetrBK Profil |
#3 · Zasláno: 2. 5. 2020, 11:56:36
Tomášeek:
Super, diky, funguje to! Takže to bylo až takto jednoduché? :) Neznám ty funkce v JS, takže ještě jednou díky moc. var $limit = $('.btm_compare_selected').length
var $element = document.getElementById($id_isa);
if($limit < 3){
$element.classList.add("button_red");
$element.classList.add("btm_compare_selected");
$element.classList.remove("button_blue");
$element.classList.remove("btm_compare_add");
$element.innerHTML = "Selected";
} |
||
|
Časová prodleva: 6 let
|
|||
0