2016-08-02 3 views
0

Рассмотрим ниже ответ на ajax-как избежать символов в строке

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

Я хочу, чтобы избежать всех вхождений котировок в ответ.

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

+0

Используйте обратные косые Не используйте' escape', это осуждается – Bergi

+0

? бежать, каким образом? encodeURIComponent'? –

ответ

0

Вы можете использовать обратную косую черту, чтобы избежать персонажа \. Поэтому, чтобы сохранить вашу строку в переменной, мы можем написать ее вот так.

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

Я не о местах oc течения персонажа. – Ashwin

+0

О, строка для выхода передается через пользовательский ввод или что-то еще? –

+0

есть. Это на самом деле ответ на вызов ajax. снова проверьте вопрос. Я редактировал. – Ashwin

0

Вы не можете программно избежать строки, чтобы сделать ее действительной JavaScript.

Он должен быть действительным JavaScript, чтобы пройти через парсер JavaScript, прежде чем его можно будет изменить JavaScript.

Вы должны исправить это в исходном коде.

\ персонаж начинает управляющую последовательность в строке JavaScript буквального:

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

Вам нужно, чтобы избежать двойного quotationmark " с обратной косой черты \

Ваша строка должна выглядеть следующим образом:

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

0

Вы c используйте обратную косую черту, чтобы решить эту проблему. Вам нужно добавить обратную косую черту для инвертированных запятых того же типа (одного или двух).

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

Обновление скрипку, а также, проверьте здесь :: https://jsfiddle.net/3w0aj5z7/1/

0

Вы можете включить строку между '' или "". Тогда вы должны сказать переменной, где котировки не являются закрывающими с \ перед этим.

В этом случае:

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

перед 'цитатой

или

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

раньше "цитаты

Смежные вопросы