Строковый параметр функции со спецсимволами
есть
function DeleteBlock(id,name) и нейм можеть быть какой угодно, например: 7, 'черный' сама функция вызывается onclick="DeleteBlock('<?php echo $var['id']; ?>','<?php echo $var['name']; ?>')" Можна как-то передавать такие значения в джаваскрипт? Или запрещать юзеру вводить спецсимволы в названия? |
Экранировать.
|
чем?
addslashes не помогает если есть двойная кавычка |
Лучший вариант сериализовать в JSON. Например, с помощью Zend_Json::encode, если используется Zend.
|
Zend не использую, но стандартный json_encode() возвращает строку в двойных кавычках, что приводит к ошибке.. (
|
У вас слишком большая вложенность различных кавычек. Теоретически это все экранировать можно, но муторно. Лучше вынести в отдельный код
<script type="text/javascript"> var name = <?php json_encode(echo $var['name'];) ?>; </script> onclick="DeleteBlock('<?php echo $var['id']; ?>', name)" |
работает!)
Спасибо большое.. ) |
Часовой пояс GMT +3, время: 11:50. |