2014-07-11 5 views
0

я определил переменную, которые состоят динамической переменнойDeal одиночные/двойные кавычки в строке

var tempVar = "<%=varName%>"; 

на varName выходы Black/Blue Mirror + some special character with single and double quotes. на странице он прерывает tempVar из-за одиночных/двойных кавычек.

Фактическая строка, которая имеет имя varName, является Black/Blue Mirror ? /\,.°º®#&*@+–!:()‘’”"'. Это действительно разрешено в моем проекте.

Выход на странице: var tempVar = "Black/Blue Mirror ? /\,.°º®#&*@+–!:()‘’”"'";

+1

и ваш вопрос ?? – iJade

+0

Надеюсь, ты сейчас понял мой вопрос –

ответ

0

Вы должны заменить двойные кавычки с \"

Тогда Javascript прочтет их как двойные кавычки.

var tempVar = "<%=varName.replaceAll("\"", "\\\"")%>"; 
1
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> 
[..] 
var tempVar = <c:out value="${varName}"/>; 

Это изменит двойные кавычки в &quot; и т.д.

Если varName объявлен внутри скриптлете, вы должны сделать его видимым для языка выражений:

<% 
    pageContext.setAttribute("varName", varName); 
%> 
Смежные вопросы