jQuery вырезает знак "+". Как пофиксить? - Visavi.net
https://visavi.net/
RSS - Visavi.nethttps://visavi.net/assets/img/images/logo_small.pngRSS - 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 = "var1=" + encodeURIComponent(var1) + "&var2=" + encodeURIComponent(var2);
https://visavi.net/topics/25206/443340
jQuery вырезает знак "+". Как пофиксить? ВалерийTue, 08 Nov 2011 16:50:29 +0400Сообщенияhttps://visavi.net/topics/25206/44334017. <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 вырезает знак "+". Как пофиксить? ramzesThu, 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: $("#id") работал как селектор, $("<img>") создавал элемент, а $("#<mg>") тоже создавал элемент.</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/42587715. <strong>dima.london</strong>, какую это? пардон я крайне плохо понимаю какие могут быть уязвимости в js вообще
https://visavi.net/topics/25206/425874
jQuery вырезает знак "+". Как пофиксить? ramzesThu, 29 Sep 2011 01:18:05 +0400Сообщенияhttps://visavi.net/topics/25206/42587411. <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/42586312. <strong>ZiGR</strong>, так и так, его надо реплейсить<img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile"> <br>
интересно то что, у меня нет такой проблемы, она точно должна быть? может дело не в самом js? может ему что то мешает?<br>
.. хотя я немного иначе данные отправляю..
https://visavi.net/topics/25206/425843
jQuery вырезает знак "+". Как пофиксить? ramzesWed, 28 Sep 2011 23:04:12 +0400Сообщенияhttps://visavi.net/topics/25206/4258439. <strong>dima.london</strong>, кроме всего прочего, у меня отправляет плюсы на ура =) тоже jquery но 1.3.2.js
https://visavi.net/topics/25206/425833
jQuery вырезает знак "+". Как пофиксить? ramzesWed, 28 Sep 2011 22:45:01 +0400Сообщенияhttps://visavi.net/topics/25206/4258338. <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('_plus_', '+', $text); <br>
вот это<img src="https://visavi.net/uploads/stickers/smile.gif" alt="smile">
https://visavi.net/topics/25206/425829
jQuery вырезает знак "+". Как пофиксить? ramzesWed, 28 Sep 2011 22:32:04 +0400Сообщенияhttps://visavi.net/topics/25206/4258296. <strong>ramzes</strong>, что ты имеешь ввиду?
https://visavi.net/topics/25206/425826
jQuery вырезает знак "+". Как пофиксить? ДмитрийWed, 28 Sep 2011 22:29:38 +0400Сообщенияhttps://visavi.net/topics/25206/4258264. <strong>dima.london</strong>, зачем регулярками? Str_replace
https://visavi.net/topics/25206/425824
jQuery вырезает знак "+". Как пофиксить? ramzesWed, 28 Sep 2011 22:26:08 +0400Сообщенияhttps://visavi.net/topics/25206/4258242. <strong>AHgpyxA</strong>, по твоему совету склепал ф-ю обработки знака +<br>
<pre class="prettyprint">function check_plus(text)
{
text = text.replace(new RegExp('\\+','g'),"_plus_");
return text;
};</pre>
Ею можно обрабатывать как выборочно переменные перед передачей, так и полностью data.<br>
<br>
Гемор заключается в том, что теперь надо каждую обработанную таким макаром переменную в обработчике заменять обратно<br>
<pre class="prettyprint">$text = preg_replace('|_plus_|iu','+', $text); </pre>
Спасибо, вопрос решил, но это все-таки костыль. Хотельсь бы решить вопрос более глобально.<br>
<br>
3. <strong>Vanich</strong>, в той ссылке советуют то же самое, что во 2 посте - т.е. маскировку знака "+".
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&id=1683198" target="_blank" rel="nofollow">http://ru.w3support.net/index.php?db=so&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>
один из вариантов - заменять плюс при подаче запроса на что-нибудь типа "_plus_", а при получении запроса менять обратно.</blockquote>
Если я правильно понял тут + объединяет между собой имена переменных и их значения,а сам + не передается в запросе.
https://visavi.net/topics/25206/425661
jQuery вырезает знак "+". Как пофиксить? ВанёкWed, 28 Sep 2011 16:34:59 +0400Сообщенияhttps://visavi.net/topics/25206/425661один из вариантов - заменять плюс при подаче запроса на что-нибудь типа "_plus_", а при получении запроса менять обратно.
https://visavi.net/topics/25206/425655
jQuery вырезает знак "+". Как пофиксить? AHgpyxAWed, 28 Sep 2011 16:22:18 +0400Сообщенияhttps://visavi.net/topics/25206/425655Такая штука. Заметил, что при передаче POST запроса jQuery вырезает знак "+". При обычном POST все отправляется нормально. В чем может быть причина?<br>
<br>
Данные POST я отправляю примерно таким макаром (начало обработки):<br>
<pre class="prettyprint">var flop = $('#flop').val();
var name = $('#name').val();
$.ajax({
type: 'POST',
url: 'адрес обработчика',
cache: false,
data: 'flop=' + flop + '&name=' + name,
dataType: 'html',
success: function(repsone)
{</pre>
Обычно юзаю jquery-1.4.2.min, сегодня попробовал версию 1.6.3 - ничего не изменилось. <br>
Как пофиксить? Мне в некоторых местах кода надо передавать знак "+" постом.
https://visavi.net/topics/25206/425650
jQuery вырезает знак "+". Как пофиксить? ДмитрийWed, 28 Sep 2011 16:18:28 +0400Сообщенияhttps://visavi.net/topics/25206/425650