2016-09-22 4 views
-4

как я могу правильно написать эту строку?Апострофы в HTML и JavaScript

tr = tr + '<tr onclick="localStorage.setItem("X", ' + xVal + '); document.location = "page.html";"></tr>' 

Спасибо!

+1

Дон 't использовать атрибуты обработчика inline-событий, и у вас не будет проблем с апострофами. – Bergi

+0

@Bergi Как я могу это сделать? –

+0

Используйте DOM для создания своих элементов вместо создания HTML-строк, а затем [зарегистрируйте обработчики событий] (http://quirksmode.org/js/events_advanced.html) в качестве функций (не строк), чтобы вы могли использовать закрытие над 'xVal'. – Bergi

ответ

-2

не знаю, что вы хотите достичь, но вы можете использовать обратную косую черту \ для специальных символов

tr = tr + '<tr onclick="localStorage.setItem("X", ' + xVal + ');document.location = \"page.html\";"></tr>' 

мой плохой ниже правильный .. OnClick должны быть экранированы в одинарные кавычки, чтобы работать

tr = tr + '<tr onclick=\'localStorage.setItem("X", "' + xVal + '"); document.location = "page.html";\'></tr>' 
+0

Не нужно скрывать кавычки в строке с разделителем апострофа. – Bergi

+1

Это создаст точно такую ​​же строку, которую OP уже создает. – JLRishe

+0

Это не работает :( –

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