Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Экранирование в js

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: в гугле не смог найти!!!
goga5
Отправлено: 29 Апреля, 2013 - 21:35:53
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




Здравствуйте!

У нас есть такой код:

CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){
  2. $('#news').html('вывод новостей');
  3. });



там где "вывод новостей", там бывают одинарные и двойнын кавычки в тексте + html код, новости выводятся хорошо до тех пор пока в тексте не появиться одинарная кавычка, копать там где "вывод новостей" мы не можем а там где js код - да, можно ли решить эту проблему ?
 
 Top
legion46
Отправлено: 29 Апреля, 2013 - 21:46:51
Post Id



Новичок


Покинул форум
Сообщений всего: 28
Дата рег-ции: Июль 2011  


Помог: 0 раз(а)




хм.. фильтровать вывод новостей на наличии кавычки - если такова имеется, заменить другим символом или убрать.. потом вставлять в обработчик жс


-----
хачу все знать!
 
 Top
LIME
Отправлено: 29 Апреля, 2013 - 22:03:03
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




если вставляете литерал то экранируйте \'
 
 Top
goga5
Отправлено: 29 Апреля, 2013 - 22:28:03
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




legion46 пишет:
заменить другим символом или убрать


согласен и убрать но как ? сам текст трогать не можем, можно ли это сделать при помощи js кода ? если да то как ?
 
 Top
DelphinPRO
Отправлено: 29 Апреля, 2013 - 22:54:10
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){
  2.         var text = "берём откуда нибудь этот текст и 'загоняем' его в переменную";
  3.                
  4.         text.replace(/'/gi, ''');
  5.         $('#news').html(text);
  6. });


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
LIME
Отправлено: 29 Апреля, 2013 - 22:55:27
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




покажи как текст вставляешь
на примере тупо литерал
 
 Top
goga5
Отправлено: 30 Апреля, 2013 - 02:43:41
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




DelphinPRO пишет:
DelphinPRO

в таком случае не работает при двойных кавычек.

LIME пишет:
LIME

новости берутся с БД, можно решить этот вопрос при помощи php но, для этого нужно будет копать движок и поэтому и по другой причине мне нужно решить этот вопрос при помощи js, помогите пожалуйста....
 
 Top
DelphinPRO
Отправлено: 30 Апреля, 2013 - 07:55:19
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




Да ты код покажи, который не работает. Полный.


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
SAD Модератор
Отправлено: 30 Апреля, 2013 - 08:50:38
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2508
Дата рег-ции: Май 2009  
Откуда: Днепропетровск, Украина


Помог: 75 раз(а)




Вставляемый текст и все к нему причитающееся загоняете в переменную и потом уже делаете .html(some_var) и нет никаких проблем.

Собственно как сказал DelphinPRO
 
 Top
goga5
Отправлено: 30 Апреля, 2013 - 12:23:39
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




DelphinPRO пишет:
Да ты код покажи, который не работает. Полный.

SAD пишет:
Вставляемый текст и все к нему причитающееся загоняете в переменную и потом уже делаете .html(some_var) и нет никаких проблем.

Собственно как сказал DelphinPRO

Да нет у меня никакого полного кода, вот что у меня есть, это: Тег {news} который выводит новости в шаблоне и кусочек кода которое я вставлял выше

CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){
  2. $('#news').html('{news}');
  3. });


вывожу это в нужном месте

всё работает пока в тексте не встретится одинарная кавычка, дальше я незнаю как это исправить, помогите пожалуйста...
 
 Top
DelphinPRO
Отправлено: 30 Апреля, 2013 - 14:25:49
Post Id



Активный участник


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


Помог: 353 раз(а)




CODE (javascript):
скопировать код в буфер обмена
  1. $(function(){
  2. $('#news').html('{news}');
  3. });


ну так вот же оно!

Ваша задача в данной постановке решения не имеет, так как сервер отдает синтаксически некорректный код (при наличии апострофа в тексте).
Убедится в этом вы можете, открыв исходный код страницы в браузере.
или посмотреть в консоли браузера.

Единственное решение вам предложил Lime во втором ответе - нужно экранировать кавычки. Экранировать в серверном коде, при назначении переменной {news} в шаблонизаторе. Т.е. в содержимом этой переменной нужно либо экранировать кавычки ( \' ), либо заменить их на мнемоники ( ' )

(Отредактировано автором: 30 Апреля, 2013 - 14:27:34)



-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
goga5
Отправлено: 30 Апреля, 2013 - 15:35:12
Post Id


Новичок


Покинул форум
Сообщений всего: 63
Дата рег-ции: Июнь 2011  


Помог: 0 раз(а)




Ясно.....

Спасибо огромное всем!
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB