JQuery / Javascript? Bild markieren - Wert ausgeben
jquery-neuling
- javascript
Hallo zusammen
ich bin neu auf jquery und würde gerne vollgendes umsetzen.
Man kann....
Ich habe Beispiele gefunden mit Select-Boxen jedoch nichts mit freistehenden Bildern.
Danke und Grüsse
jquery-neuling
Hi,
- Mehrere Bilder auf der Seite anklicken (Bilder haben einen Wert wie: A, B, C)
auf welche Weise hat ein Bild bei Dir etwas, das Du als Wert bezeichnest?
Ich habe Beispiele gefunden mit Select-Boxen jedoch nichts mit freistehenden Bildern.
Da ich keine Zeit habe für einen kompletten jQuery-Kurs (und dies auch nicht nötig ist, weil es derer zu Hauf im Netz gibt): Wie lautet Dein Problem?
Cheatah
Hi,
- Mehrere Bilder auf der Seite anklicken (Bilder haben einen Wert wie: A, B, C)
auf welche Weise hat ein Bild bei Dir etwas, das Du als Wert bezeichnest?
Ich habe Beispiele gefunden mit Select-Boxen jedoch nichts mit freistehenden Bildern.
Da ich keine Zeit habe für einen kompletten jQuery-Kurs (und dies auch nicht nötig ist, weil es derer zu Hauf im Netz gibt): Wie lautet Dein Problem?
Cheatah
Also als Beispiel:
Habe folgende Bilder: Apfel, Banane, Birne
Wenn ich auf Birne klicke soll er mir ins Inputfeld "Birne" schreiben.
Wenn ich zusätzlich noch Apfel anklicke soll "Apfel, Birne" stehen. Das man diese auch wieder löschen kann.
Habe ein tolles Skript gefunden, jedoch hänge ich etwas dran.
$('a.tag').live('click', function(e){
//Class hinzufügen
$(this).toggleClass('selected');
//Kollektion der Tags erstellen
var Marke = [];
$('a.tag.selected').each(function(){
Marke.push($(this).text());
});
//K
$('#tag').val(Marke.join(','));
return false;
});
<a href="#" class="tag">Banane</a>
<input id="tag" type="text" name="marken" value="">
Funktioniert einwandfrei. Jedoch möchte ich aber nicht das Banane steht sondern ein Bild von der Banane und wenn ich drauf klicke das die Information Banane zur Inputbox geht.
Moin!
Du haengst an jedes Bild den onclick Eventhandler mit der noetigen Funktion.
Einfaches Beispiel nur per JS geloest:
document.getElementById("Banane").onclick = function(){document.getElementById("Ausgabefeld").value = "Banane";};
Nur mal so als Grundprinzip.
Das ganze geht im Detail natuerlich besser und auf x verschiedene Art und Weisen.
@@jquery-neuling:
nuqneH
Ein paar Anmerkungen nebenbei:
$('a.tag').live('click', function(e){
Verwende [link:http://api.jquery.com/on/@title=on()]
, nicht [link:http://api.jquery.com/live/@title=live()]
(deprecated). (Ggfs. jQuery aktualisieren.)
//Class hinzufügen
$(this).toggleClass('selected');
Der Kommentar ist irreführend. toggleClass()
fügt nicht unbedingt eine Klasse hinzu.
$('a.tag.selected').each(function(){
Du hattest bereits $('a.tag')
in $(this)
, da ist es sinnlos, nochmal das ganze DOM auf $('a.tag.selected')
zu durchsuchen. Verwende $(this).[link:http://api.jquery.com/filter/@title=filter]('.selected')
!
Qapla'
Funktioniert einwandfrei. Jedoch möchte ich aber nicht das Banane steht sondern ein Bild von der Banane und wenn ich drauf klicke das die Information Banane zur Inputbox geht.
Und an welcher Stelle hast du Schwierigkeiten? Den Code, den du bereits hast, an deine Bedürfnisse anzupassen ist fast schon trivial.
Poste doch mal deine bisherigen Ansätze.
hi,
Hallo zusammen
ich bin neu auf jquery und würde gerne vollgendes umsetzen.
Man kann....
- Mehrere Bilder auf der Seite anklicken (Bilder haben einen Wert wie: A, B, C)
- Der Wert wird in ein input Feld geschrieben
Ich habe Beispiele gefunden mit Select-Boxen jedoch nichts mit freistehenden Bildern.
Danke und Grüsse
jquery-neuling
function set_abc(a,b,c) {
document.getElementById('a_hier_her').innerHTML = a;
document.getElementById('b_hier_her').innerHTML = b;
document.getElementById('c_hier_her').innerHTML = c;
}
(alternativ das innerHTML mit value austauschen
<img src="" onclick="set_abc('werta','wertb','wertc');" />
<div id="a_hier_her"></div>
<div id="b_hier_her"></div>
<div id="c_hier_her"></div>
Mehr war ja wohl nicht verlangt ;) und das ganze braucht kein jquery.
Gruß Niklas