2016-08-02 82 views
0

Betrachten unten Antwort von Ajax-Wie zu entkommen Zeichen in einer Zeichenfolge

function validateVar(){ 
    $.ajax({ 
     url:"abc.do", 
     datatype:"text", 
     success:function(response){ 
      alert(response); //"asdjakd"fsd'f'fsf"s'dfs'df"fsdf"fsfsf"" 
     } 
    }); 
} 

ich alle Vorkommen von Zitaten in der Antwort entkommen will.

JSFIDDLE: https://jsfiddle.net/ashwyn/3w0aj5z7/

+0

Verwenden Schrägstriche nicht verwenden' escape', es ist veraltet – Bergi

+0

? Flucht in welcher Art und Weise? 'encodeURIComponent'? –

Antwort

0

Sie können den umgekehrten Schrägstrich verwenden, um ein Zeichen \ zu entkommen. Um Ihre Zeichenfolge in einer Variablen zu speichern, können wir sie so schreiben.

var v = "asdjakd\"fsd\'f\'fsf\"s\'dfs\'df\"fsdf\"fsfsf"; 
+0

Ich nicht über die Orte der oc Aktualitäten des Charakters. – Ashwin

+0

Oh, die Zeichenfolge zu entkommen ist über Benutzereingabe oder etwas? –

+0

ja. Es ist eigentlich eine Antwort auf einen Ajax-Anruf. überprüfe nochmal die Frage die ich bearbeitet habe. – Ashwin

0

Sie können eine Zeichenfolge nicht programmgesteuert ausschließen, um sie als gültiges JavaScript zu definieren.

Es muss gültiges JavaScript sein, um den JavaScript-Parser zu durchlaufen, bevor er durch JavaScript geändert werden kann.

Sie müssen es im Quellcode beheben.

Die \ Zeichen beginnt eine Escape-Sequenz in einem JavaScript Stringliteral:

var v = "asdjakd\"fsd'f'fsf\"s'dfs'df\"fsdf\"fsfsf"; 
0

Sie benötigen die doppelte quotationmark " mit Backslash zu entkommen \

Ihre Zeichenfolge sollte wie folgt aussehen:

"asdjakd\"fsd'f'fsf\"s'dfs'df\"fsdf\"fsfsf"

0

Sie c Verwenden Sie einen Backslash, um das Problem zu lösen. Sie müssen einen Backslash für die gleichen Anführungszeichen (einfach oder doppelt) hinzufügen.

function validateVar(){ 
    var v = "asdjakd\"fsd'f'fsf\"s'dfs'df\"fsdf\"fsfsf"; 
    alert(v); 
} 

Aktualisieren Sie die Geige auch, hier überprüfen :: https://jsfiddle.net/3w0aj5z7/1/

0

Sie können die Zeichenfolge zwischen '' oder "" umfassen. Dann müssen Sie zu der Variablen sagen, wo Anführungszeichen nicht die schließenden mit \ davor sind.

In diesem Fall:

var v = ' "asdjakd"fsd\'f\'fsf"s\'dfs\'df"fsdf"fsfsf" '; 

vor 'Zitat

oder

var v = " \"asdjakd\"fsd'f'fsf\"s'dfs'df\"fsdf\"fsfsf\" "; 

vor "zitiert