SyntaxError: неопределенная строковая литеральная странная ошибка [duplicate]
На этот вопрос уже есть ответ здесь:
Как разбить строку на более чем одну строку кода в JavaScript? 8 ответовУ меня есть эта странная неопределенная строковая литеральная ошибка в JavaScript. Когда я вывести только одно слово, как "PHP» (в переменной cache_open.handler). Там нет ошибки. Это скрипт и ниже работает нормально:
var cache_open = {};
var cache_name_open={};
var handler='open';
cache_open.handler='<pre class="brush: html;">php</pre>';
cache_name_open.handler='PHP prepared statement';
Однако, когда я вывожу код (исходный код, выданный html-объектом) в переменную виновника cache_open.handler, он возвращает неопределенную строковую литеральную ошибку в консоли.
Это пример вывода, где он возвращает ошибку:
var cache_open = {};
var cache_name_open={};
var handler='open';
cacheObj_open.handler='<pre class="brush: html;"> <?php
$stmt = $dbh->prepare("SELECT * FROM REGISTRY where name = ?");
if ($stmt->execute(array($_GET['name']))) {
while ($row = $stmt->fetch()) {
print_r($row);
}
}
?></pre>';
cache_name_open.handler='PHP prepared statement';
Сначала я подумал, что это просто сложность возвращаемого кода (например, содержащего кавычки и т. Д.). Но даже простой HTML-код также возвращает ошибку:
var cache_open = {};
var cache_name_open={};
var handler='open';
cacheObj_open.handler='<pre class="brush: html;"><html>
<body>
<p>Hello world.</p>
</body>
</html></pre>';
cache_name_open.handler='PHP prepared statement';
Есть идеи, что вызывает ошибку? Любые предложения по модификации высоко ценится, спасибо!