У меня проблема с несколькими встроенными/чередующимися кавычками, на которые я надеюсь, кто-то может помочь. Вот соответствующий код ...Переключение между одиночными и двойными кавычками неопределенно
displayMessage(
"post success!",
"<p style='margin-top: 15px; margin-bottom: 15px'>if you'd like to share your post...</p>
<a onclick='openSharePopup("+textA+","+numberA+","+numberB+")' style='cursor: pointer; font-size:16px'>
share
</a>"
);
function displayMessage(heading, text){
$("#displayMessageHeadingDiv").html(heading);
$("#displayMessageBodyDiv").html(text);
$("#displayMessageParentDiv").css("display","block");
}
displayMessage() вызывается после того, как пользователь успешно отправляет что-то на сайте, и работает отлично, если «textA» содержит апостроф (например, что-то вроде «Мнение Майка»)
Проблема заключается в том, что хотя текстA заключен в двойные кавычки - эти двойные кавычки уже находятся внутри одинарных кавычек моего атрибута onclick, который сам находится внутри еще более двойных кавычек всего второго аргумента displayMessage.
Ранее я думал, что чередование одиночных и двойных кавычек может продолжаться бесконечно, но этот пример, похоже, предполагает иное. Я никогда также экспериментировал с этими вариантами, чтобы разорвать любые кавычки в textA но ни работали ...
textA = JSON.stringify(textA).replace(/&/, "&").replace(/"/g, """);
textA = textA.replace("'","\'");
Любые идеи о том, куда я иду неправильно с этим?
Большое спасибо Juhana - очень рад услышать, что мой подход был в корне неправильно, и ваш rewrite действительно полностью решила проблему !! – d3wannabe