Часто делаю формы заказа через webform + colorbox_node
примерно так https://blogpost.pp.ua/drupal/93
Сегодня заметил, что т.обр. не обарабатываются кириллические символы в запросах в Internet Explorer 11. Например тут http://terrabit.org/remont_noutbuki по кнопке Заказать в IE выскаивает: "Возникла AJAX HTTP ошибка..."
Т.е. так в IE работает:
<a class="colorbox-node" href="/forma-zakaza?razmer=3 mm">Заказать</a>
а так нет:
<a class="colorbox-node" href="/forma-zakaza?razmer=3 мм">Заказать</a>
"мм" - причина неработоспособности
Что-то можно сделать?
Комментарии
Использовать http://php.net/manual/ru/function.urlencode.php
Добрый день. Решили эту проблему?
Забили на эту проблему. Т.к. сейчас любые версии ИЕ не полностью поддерживаются к примеру VueJS
HTML:
<a class="colorbox-node" href="/forma-zakaza?razmer=3%20мм">Заказать</a>
"href="/forma-zakaza?razmer=3%20мм" - это вьюха формирует из полей товара. Если в поле названия есть пробел, как его на % заменить?
- str_replace
- l(.., 'html' => TRUE/FALSE));
- Перезаписать результаты во вьюхе
- str_replace
- l(.., 'html' => TRUE/FALSE));
Это что и куда?
Печально)
Немогу понять только почему, если делать так как написано тут https://blogpost.pp.ua/drupal/93 , т.е. передавать название продукта в ссылке (/content/bystryy_zakaz?product=[title]), то в IE все открывается. А если перезаписывать результат используя поле "Текст" (
<a class="colorbox-node" href='/fast-order-form?product=[title]'>Заказ</a>
) , то выходит эта ошибка. Если написать название продукта латиницей то все ок.Если заменить [title] на , например, Тест
<a class="colorbox-node" href='/fast-order-form?product=Тест'>Заказ</a>
то в IE ошибка появляется. А если заменить "Тест" на его код %D0%A2%D0%B5%D1%81%D1%82
<a class="colorbox-node" href='/fast-order-form?product=%D0%A2%D0%B5%D1%81%D1%82'>Заказ</a>
то ошибки нет. Выше sas@drupal.org дал ссылку на urlencode, но как тут его привязать что то никак не соображу.
Я открывал тему более года назад.
Помоему там даже дело не в кириллических символах, а в пробеле.
Так вроде без пробела, одно слово используется.
Честно не знаю. На другом сайте посмотрел.
Так работает "Иван_Иванов"
Так нет "Иван Иванов"
Насчет кирилолицы я скорей всего был не прав.