Сообщение от Deff
|
А в чем заключается задача трансформации строки?(И зачем?
Приведите пару - тройку проблемных входных строк и их же, получаемых на выходе InputValue.replace (в идеале)
|
Проблема не в самих строках, а втом что символы кавычек при исполнении скрипта сервером транслируются по разному. А точнее команды с использованием например регулярного выражения записанные внутри тега INPUT и соответственно записанные отдельно, например в начале всего скрипта внутри функции ......<scipt> function ().....
Для правильности выполнения таких скриптов , как я понял текст кода Java Script тега например, <INPUT> будет немного отличаться от текста кода внутри ..<scipt> function ()....
вот такое значение введенное пользователем:
книга с названием "В путь" находилась на полке....
вызывает ошибку. А если убрать кавычки или их заменить например на символы <>:
книга с названием <В путь> находилась на полке....
то все работает
Вобще задача трансформации вылезла из за того, что после того как введен текст содержащего кавычки (двойные " или одинарные ') не выводился НА ЭКРАН ИЗА ОШИБКИ В СКРИПТЕ возникающей после ответа AJAX обработчика, возвращающего фрагмент нового тега INPUT в кототром значением по умолчанию является ранее введенное значение. и вот в тех местах где это значение содержит кавычки (я их пробовал экранировать - но не помогло) возникает ошибка. Очевидно я запутался в синтаксисе но задучу нужно было срочно решать любым доступным способом. В качестве решения была выбрана идея заменить символ кавычки на код HTML сущности. может и сложно но так заработало правда с использованием совета использования JavaScript в function () за пределами тега <INPIT>
Подведу маленький итого: в чем проблема с кавычками я так и понял, НО задачу решил.
Если кому интересно (мне интересно) подскажите как правильно экранировать или заменять символы на их сущности при записи текста кода JavaScript внутри HTML тега INPUT (в инете я так и не смог найти ответ).