jQuery вырезает знак "+". Как пофиксить? - Visavi.net https://visavi.net/ RSS - Visavi.net https://visavi.net/assets/img/images/logo_small.png RSS - Visavi.net https://visavi.net/ [email protected] (admin) [email protected] (admin) Thu, 28 Nov 2024 01:53:10 +0300 Сегодня столкнулся с той же проблемой.. + вырезался.. да и вообще всё что после плюса шло, на сервак не отправлялось. Решил проблему так. Нужно просто обрабатывать значения функцией encodeURIComponent .. это аналог php функции urlencode<br> <br> post = &quot;var1=&quot; + encodeURIComponent(var1) + &quot;&amp;var2=&quot; + encodeURIComponent(var2); https://visavi.net/topics/25206/443340 jQuery вырезает знак "+". Как пофиксить? Валерий Tue, 08 Nov 2011 16:50:29 +0400 Сообщения https://visavi.net/topics/25206/443340 17. <strong>dima.london</strong>, заменил на 1.6.4, все отлично с + <br> ни куда не исчезают<img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> видимо дело в том как ты отправляешь данные https://visavi.net/topics/25206/425886 jQuery вырезает знак "+". Как пофиксить? ramzes Thu, 29 Sep 2011 02:31:49 +0400 Сообщения https://visavi.net/topics/25206/425886 Честно, не могу найти статью. Там подробно расписано это. Немного упоминается <a href="http://habrahabr.ru/blogs/jquery/127561/" target="_blank" rel="nofollow">ЗДЕСЬ</a><br> <blockquote class="blockquote">— Пофиксили уязвимость XSS: $(&quot;#id&quot;) работал как селектор, $(&quot;&lt;img&gt;&quot;) создавал элемент, а $(&quot;#&lt;mg&gt;&quot;) тоже создавал элемент.</blockquote> <br> <em><span style="font-size:x-small">Добавлено через 02:39 сек.</span></em><br> к слову, уже вышла <a href="http://habrahabr.ru/blogs/jquery/128317/" target="_blank" rel="nofollow">версия 1.6.4</a> https://visavi.net/topics/25206/425877 jQuery вырезает знак "+". Как пофиксить? Дмитрий Thu, 29 Sep 2011 01:32:23 +0400 Сообщения https://visavi.net/topics/25206/425877 15. <strong>dima.london</strong>, какую это? пардон я крайне плохо понимаю какие могут быть уязвимости в js вообще https://visavi.net/topics/25206/425874 jQuery вырезает знак "+". Как пофиксить? ramzes Thu, 29 Sep 2011 01:18:05 +0400 Сообщения https://visavi.net/topics/25206/425874 11. <strong>ramzes</strong>, я читал, что 1.3.2, 1.4.2 и 1.5.2 бажные - допускают атаку через XSS https://visavi.net/topics/25206/425863 jQuery вырезает знак "+". Как пофиксить? Дмитрий Thu, 29 Sep 2011 00:43:20 +0400 Сообщения https://visavi.net/topics/25206/425863 12. <strong>ZiGR</strong>, так и так, его надо реплейсить<img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> <br> интересно то что, у меня нет такой проблемы, она точно должна быть? может дело не в самом js? может ему что то мешает?<br> .. хотя я немного иначе данные отправляю.. https://visavi.net/topics/25206/425843 jQuery вырезает знак "+". Как пофиксить? ramzes Wed, 28 Sep 2011 23:04:12 +0400 Сообщения https://visavi.net/topics/25206/425843 9. <strong>dima.london</strong>, кроме всего прочего, у меня отправляет плюсы на ура =) тоже jquery но 1.3.2.js https://visavi.net/topics/25206/425833 jQuery вырезает знак "+". Как пофиксить? ramzes Wed, 28 Sep 2011 22:45:01 +0400 Сообщения https://visavi.net/topics/25206/425833 8. <strong>ramzes</strong>, а, ну это понятно, я думал, ты про JS https://visavi.net/topics/25206/425831 jQuery вырезает знак "+". Как пофиксить? Дмитрий Wed, 28 Sep 2011 22:36:33 +0400 Сообщения https://visavi.net/topics/25206/425831 $text = str_replace(&#039;_plus_&#039;, &#039;+&#039;, $text); <br> вот это<img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> https://visavi.net/topics/25206/425829 jQuery вырезает знак "+". Как пофиксить? ramzes Wed, 28 Sep 2011 22:32:04 +0400 Сообщения https://visavi.net/topics/25206/425829 6. <strong>ramzes</strong>, что ты имеешь ввиду? https://visavi.net/topics/25206/425826 jQuery вырезает знак "+". Как пофиксить? Дмитрий Wed, 28 Sep 2011 22:29:38 +0400 Сообщения https://visavi.net/topics/25206/425826 4. <strong>dima.london</strong>, зачем регулярками? Str_replace https://visavi.net/topics/25206/425824 jQuery вырезает знак "+". Как пофиксить? ramzes Wed, 28 Sep 2011 22:26:08 +0400 Сообщения https://visavi.net/topics/25206/425824 2. <strong>AHgpyxA</strong>, по твоему совету склепал ф-ю обработки знака +<br> <pre class="prettyprint">function check_plus(text) { text = text.replace(new RegExp(&#039;\\+&#039;,&#039;g&#039;),&quot;_plus_&quot;); return text; };</pre> Ею можно обрабатывать как выборочно переменные перед передачей, так и полностью data.<br> <br> Гемор заключается в том, что теперь надо каждую обработанную таким макаром переменную в обработчике заменять обратно<br> <pre class="prettyprint">$text = preg_replace(&#039;|_plus_|iu&#039;,&#039;+&#039;, $text); </pre> Спасибо, вопрос решил, но это все-таки костыль. Хотельсь бы решить вопрос более глобально.<br> <br> 3. <strong>Vanich</strong>, в той ссылке советуют то же самое, что во 2 посте - т.е. маскировку знака &quot;+&quot;. https://visavi.net/topics/25206/425677 jQuery вырезает знак "+". Как пофиксить? Дмитрий Wed, 28 Sep 2011 17:13:02 +0400 Сообщения https://visavi.net/topics/25206/425677 <a href="http://ru.w3support.net/index.php?db=so&amp;id=1683198" target="_blank" rel="nofollow">http://ru.w3support.net/index.php?db=so&amp;id=1683198</a><br> <br> <em><span style="font-size:x-small">Добавлено через 05:10 сек.</span></em><br> <blockquote class="blockquote"><strong>AHgpyxA</strong> (28 Сентября 2011 / 16:22)<br> один из вариантов - заменять плюс при подаче запроса на что-нибудь типа &quot;_plus_&quot;, а при получении запроса менять обратно.</blockquote> Если я правильно понял тут + объединяет между собой имена переменных и их значения,а сам + не передается в запросе. https://visavi.net/topics/25206/425661 jQuery вырезает знак "+". Как пофиксить? Ванёк Wed, 28 Sep 2011 16:34:59 +0400 Сообщения https://visavi.net/topics/25206/425661 один из вариантов - заменять плюс при подаче запроса на что-нибудь типа &quot;_plus_&quot;, а при получении запроса менять обратно. https://visavi.net/topics/25206/425655 jQuery вырезает знак "+". Как пофиксить? AHgpyxA Wed, 28 Sep 2011 16:22:18 +0400 Сообщения https://visavi.net/topics/25206/425655 Такая штука. Заметил, что при передаче POST запроса jQuery вырезает знак &quot;+&quot;. При обычном POST все отправляется нормально. В чем может быть причина?<br> <br> Данные POST я отправляю примерно таким макаром (начало обработки):<br> <pre class="prettyprint">var flop = $(&#039;#flop&#039;).val(); var name = $(&#039;#name&#039;).val(); $.ajax({ type&#58; &#039;POST&#039;, url&#58; &#039;адрес обработчика&#039;, cache&#58; false, data&#58; &#039;flop=&#039; + flop + &#039;&amp;name=&#039; + name, dataType&#58; &#039;html&#039;, success&#58; function(repsone) {</pre> Обычно юзаю jquery-1.4.2.min, сегодня попробовал версию 1.6.3 - ничего не изменилось. <br> Как пофиксить? Мне в некоторых местах кода надо передавать знак &quot;+&quot; постом. https://visavi.net/topics/25206/425650 jQuery вырезает знак "+". Как пофиксить? Дмитрий Wed, 28 Sep 2011 16:18:28 +0400 Сообщения https://visavi.net/topics/25206/425650