2016-05-03 4 views
-1

Da meine Selektoroptionen und Logoabbildungen denselben Namen haben, möchte ich hiermit eine Funktion erstellen, die das Bild bei der Auswahl ändert. Ich habe dies versucht:Funktion als Attribut für div in jQuery verwenden

$(function(){ 
    $(selector).click(
    $(function(){ 
     $(div).attr("src", "($(selector).val()).png") 
}))}) 

Buuut, keine Sauce :(

Mit Hilfe von parth718 dazu bekam:

$(function)(){ 
$(selector).click($(div).attr("src", "images/logos/"+($(selector).val()+".png")))}; 

Aber jetzt bin ich immer Fehler: Typeerror: g. handler.apply ist keine Funktion. ich jQuery 1.12.2 aus dem Google-CDN auf diese läuft. toughts? .-.

+1

Try this - '$ (logodiv) .attr ("src", $ (pagamento) .val() + "png".) ' – Bhumika107

+1

Sie müssen keinen zweiten Dokument-Ready-Handler * innerhalb Ihres Click-Handlers definieren. – nnnnnn

Antwort

0

statt

$(logodiv).attr("src", "($(selector).val()).png"); 

versuchen diese

$(logodiv).attr("src",($(selector).val()+".png"); 

Sie verwenden Variable in "" daher die attr geändert werden als

src="$(selector).val().png" 

genaue Zeichenfolge da sein und nicht die Wähler variabel.

+0

Das Attribut Einstellung funktioniert, aber ich kann immer noch nicht die Funktion auf klicken, $ (Funktion)() {$ (sel) .click ($ (div) .attr ("src", "Bilder/Logos /" + ($ (sel) .val() + ". png")))}; Wenn ich versuche, die Konsole auszuwählen, gibt "TypeError: g.handler.apply ist keine Funktion" zurück. Irgendwelche Ideen? –

+0

Ich denke nicht, dass Sie eine neue Funktion so machen müssen .... Verwenden Sie den normalen Weg, d. H. Funktion myFuntion() {Ihr Code} .... Und wenn meine Antwort funktioniert, bitte markieren Sie, damit ich Reputation bekommen kann – parth718

1

In PHP, "$ file.png" gibt Ihnen das gewünschte Ergebnis, nicht in Javascript ...

Sie haben Strings mit Ihrem var mit dem Plus-Operator verketten.

Wie gesagt, müssen Sie tun ein:

$(logodiv).attr("src", $(selector).val()+".png")

Verwandte Themen