Javascript in html - Einfaches Zitat in einem anderen einfachen Zitat verwenden

7
%Vor%

Der obige Code ist mein Javascript. Problem ist, Hallo oder eine andere Zeichenfolge zu drucken. Wenn ich nur 123 anstelle von Hallo tippe, gibt es Alarm. Aber ich kann dort keine Zeichenfolge wie Hallo verwenden. Normalerweise wird ein String in einer Alert-Funktion in Anführungszeichen eingeschlossen, aber der gesamte Inhalt ist in Anführungszeichen gesetzt, und ich habe bereits ein einfaches Anführungszeichen am Anfang der onclick-Funktion verwendet. Ich habe versucht, Escape-Zeichen ("\") zu verwenden, aber es hat nicht geholfen. Irgendwelche Vorschläge?

    
Ashish Nair 08.01.2010, 09:12
quelle

7 Antworten

14

Versuchen Sie Folgendes:

%Vor%     
Darin Dimitrov 08.01.2010 09:15
quelle
8

Wenn Sie Apostrophe als Trennzeichen für die HTML-Attribute verwenden, müssen Sie die Apostrophe, die Sie in das Attribut einfügen, mit HTML kodieren:

%Vor%

Ich bevorzuge die Verwendung von Apostrophen als Zeichenfolge in JavaScript und Anführungszeichen als Trennzeichen für HTML-Attribute. Dann entgehen Sie einfach den Apostrophen, die Sie in der Javascript-Zeichenfolge haben:

%Vor%

Um eine Zeichenfolge in ein Javascript innerhalb eines HTML-Attributs innerhalb einer Zeichenfolge in Javascript einzufügen, tun Sie Folgendes:

  • Escape alle Zeichenfolge Trennzeichen in der Zeichenfolge
  • HTML den JavaScript-Code
  • kodieren
  • Escape alle Zeichenfolgenbegrenzer in der HTML-Zeichenfolge
Guffa 08.01.2010 09:40
quelle
3

Sie haben JavaScript in HTML innerhalb von JavaScript. Das ist natürlich verwirrend. Es ist besser, die String-Sling-Probleme des Zitierens und Entkommens zu vermeiden (die, wenn sie falsch sind, leicht zu Sicherheitslücken führen können, wenn vom Benutzer übermittelte Daten verwendet werden), und zwar auf die DOM-Weise:

%Vor%     
bobince 08.01.2010 09:54
quelle
1
  

Ich habe versucht, Escape-Zeichen ("\") zu verwenden, aber es hat nicht geholfen

Javascript unterscheidet sich von C #, Sie verwenden es einfach zweimal, Beispiel: alert('We are\'t going to go')

    
M009 06.06.2012 16:32
quelle
0

Es spielt keine Rolle, ob Ihre äußeren Anführungszeichen einfach oder doppelt sind. Sie können ein Zeichen innerhalb einer äußeren Zeichenkette mit einem umgekehrten Schrägstrich ... \ 'werden' innerhalb der Zeichenkette selbst umgehen. Entweder Diesins oder Masoods Beispiel wird funktionieren. Aber Masood ist unwissend in Bezug auf die Notwendigkeit, doppelte Anführungszeichen als das äußere Gehäuse zu verwenden.

    
Tracker1 08.01.2010 09:29
quelle
0

Was ist, wenn jemand eine Variable anstelle einer Zeichenfolge "Hallo" senden muss? Etwas wie das:

%Vor%

So wie an toPopulate als Variable an showOtherContent () senden?

Das obige ist so gelöst:

%Vor%     
blaise 13.11.2010 12:16
quelle
0

Sie müssen die doppelten Anführungszeichen verwenden und sie im onclick-Attribut

zurückgeben %Vor%     
Masood Ahmad 08.01.2010 09:26
quelle

Tags und Links