Я пытаюсь разобрать настраиваемый блок текста, который я загружаю из файла. Упростим это, скажем, я пытаюсь преобразовать каждый блок текста, который появляется внутри фигурных скобок, в вещь, которую вы можете щелкнуть, чтобы быть предупрежденным javascript с вышеупомянутым текстом.
Проблема заключается в передаче 1 доллара в оповещение. $ 1 не играет как переменная. в любом случае, он начал действовать ОК:
var text='Information here: {Thanks for clicking the info link}';
text=text.replace(/{(.+)}/g,'[<span onclick=\"alert(\\'\$1\\')\">click me</span>]');
document.write(text);
До сих пор так хорошо. Я нажимаю, где он говорит «[click me]», и сообщение «Спасибо, что щелкнуло ссылку на информацию», появляется как предупреждение javascript.
Но иногда я хочу, чтобы поместить сообщение с "или" в фигурные скобки
var text='Information here: {Thanks for clicking the "info" link}';
text=text.replace(/{(.+)}/g,'[<span onclick=\"alert(\\'\$1\\')\">click me</span>]');
document.write(text);
просто не в состоянии предупредить Если я.. „Просмотр исходного кода выбора“, он дает:
Information here: [<span onclick="alert('Thanks for clicking the " info"="" link')"="">click me</span>]
Я пробовал каждую комбинацию, избегая «следов», но без радости.
Я подумал о замене "с ", но $ 1 не является переменной
Любые идеи? И да, я хочу это сделать! :-)
Спасибо!
Просто создайте функцию, которая оповещает и вызывает ее. Не пытайтесь манипулировать кодом, используя 'replace'. – Carcigenicate
Замена - это то, что делает весь проект. Пользователь создает документ на основе формы, в который помещается сложный материал, заменяя более простой код. Это позволяет мне делать много других вещей, слишком скучных, чтобы войти, но резюме состоит в том, что я хочу заменить материал. Кроме того, проблема остается в том, что, поскольку я не могу использовать $ 1 в качестве переменной, я не могу передать ее функции - то же самое. – AndyI