Ich versuche, ein Pop-up für jeden Artikel in meiner App, um die Menge zu wählen.JS Pop-up für verschiedene Artikel auf Seite
So lädt es mehrere Elemente auf der Seite vor, und ich muss es Pop-up-anzeigen, wenn Sie auf eines von ihnen klicken.
fand ich diese Lösung und versuchte es:
<div class="items">
<div class="menu_item_btn" href = "javascript:void(0)" onclick = "itemquantity()">
<%= item.name %>
</div>
<div id="light" class="itemshowcontent">
<p>Some content</p>
<a href = "javascript:void(0)" onclick = "closeitemquantity()">Close</a>
</div>
<div id="fade" class="blackoverlay"></div>
</div>
wo js:
<script>
function itemquantity() {
document.getElementById('light').style.display='block';
document.getElementById('fade').style.display='block'
}
function closeitemquantity() {
document.getElementById('light').style.display='none';
document.getElementById('fade').style.display='none'
}
</script>
Es funktioniert, aber wenn ich Menge auswählen, es immer nur für den ersten Punkt auswählt, kommt.
Wenn Sie auf das zweite Element (oder ein anderes) klicken, ist das Pop-up immer noch für das erste.
Ich glaube, das ist, weil ich getElementById verwende, da ID nur für ein Objekt verwendet wird.
Ich habe versucht, zu GetElementsByClassName zu ändern, aber dann funktioniert es überhaupt nicht. Also, meine Frage ist, wie es funktioniert?
Sollte ich bei Klassen bleiben bleiben? Oder irgendwie ID verwenden, innerhalb der Klassen?
Ich entschuldige mich, wenn es eine einfache Frage ist, ich bin nicht wirklich vertraut mit JS.
Jeder Ratschlag geschätzt.
EDIT: Hier sind einige Bilder für das, was ich mache. Dies ist die Seite mit aufgelisteten Objekten: Dies sind die Objekte, die aus der DB geladen sind und in einer Liste angezeigt werden. Wenn Sie auf eines von ihnen klicken, erscheint dieses Popup: , um die Menge auszuwählen. Ich entwickle mich im elixir und phoenix Framework.
Wenn Sie dies auf der Seite mehr als einmal, Sie haben ** alle ** von mehr als einmal? Zum Beispiel, mehrere '.items' Elemente? –
Hey @ T.J.Crowder, nicht sicher, ob ich dich richtig verstanden habe, aber ja, auf der Seite lade ich mehrere Objekte aus der db vor, und ich muss Popup bei Klick auf das Objekt zeigen. Innerhalb des Popups gibt es Optionen, was mit dem ausgewählten Objekt zu tun ist, das bei Auswahl die Seite neu lädt. Im Grunde hat jedes Objekt mehrere Funktionen, die im Popup angezeigt werden können. – Ilya
Haben Sie mehrere '.items' Elemente? Die * gesamte * Struktur, die oben gezeigt wird, wird repliziert? –