2016-05-28 4 views
0

Ich habe das folgende Codebeispiel, das in der JSP geschrieben wurde. Aber es funktioniert nicht. Ich habe dieses Code-Snippet aus den folgenden Links ausprobiert. Aber es hat mir nicht geholfen, das Problem zu lösen.Übergeben Sie eine foreach JSP-Variable als Parameter an Javascript-Funktion

Pass a JSP variable as parameter to javascript function

Passing Jsp variable to javascript as a function parameter

< c: forEach items = "$ {Artikel}" var = "item">

<div onclick="myOnClick('<%=item%>')">${item.title}</div> 

</c>

function myOnClick(item){ 
    console.log(JSON.stringify(item)); 
} 

Eigentlich bekomme ich einen Fehler in der Finsternis dass "Element kann nicht in eine Variable aufgelöst werden" für den JSP-Code.

habe ich versucht, die unter einem Code

 <div onclick="myOnClick(${item})">${item.title}</div> 

Es wurde zu werfen "Syntaxfehler: ungültiges Zeichen" Fehler.

Brauchen Sie Hilfe, um dieses Problem zu beheben. Vielen Dank.

+1

Warum '<%=item%>' anstelle von '$ {item}' ?? Wie auch immer, was Sie einfügen, ist eine Zeichenkette (Sie haben es sogar mit ''' zitiert), die durch Aufrufen von 'item.toString()' abgerufen wird. Was also erwarten Sie von 'stringify()' call? Ich meine, es ist bereits eine Zeichenfolge und sehr wahrscheinlich keine JSON-Zeichenfolge, es sei denn, Sie haben 'toString()' implementiert, um JSON zurückzugeben. – Andreas

+0

Eigentlich bekomme ich einen Fehler in der Eclipse, dass "Element kann nicht in eine Variable aufgelöst werden". Das ist mein Problem. Diese Methode myOnClick() ist eine temporäre Methode. Konzentriere dich nicht auf diese Methodenimplementierung. Ich fragte nach dem JSP-Code – veerababu

+0

Das ist eine ganz andere Frage. Verwende '$ {item}'. – Andreas

Antwort

0

Ich fand die Antwort von meinem eigenen aus dem folgenden Link.

How to access a java object in javascript from JSP?

Das ist, was genau ich im Code zu tun. Ich bekomme die Java-Objekte und ich ordne sie dem HTML zu. Sobald sie zugeordnet sind, kann ich sie nicht mehr von Javascript aus aufrufen. Aber in der obigen Verbindung haben sie die Lösung für das Problem zur Verfügung gestellt. Also müssen wir einen Webservice aufrufen, um das tatsächliche Objekt zu erhalten. Vielen Dank @LeleDumbo für die Bereitstellung der Antwort.

Verwandte Themen