Используя этот плагин jquery: http://archive.plugins.jquery.com/project/query-object
Итак, у меня есть этот URL: results?search_query=alex+voievod
, и мне нужно добавить &page=2
, что я делаю с помощью упомянутого плагина.
Теперь проблема в том, что он преобразует +
в %2B
, и это влияет на мою страницу просмотра . Я попытался установить spaces: false
, как сказано в документации (хотя spaces: VALUE
не space
)
Но он не будет работать, он добавляет параметр, но также меняет +, как упоминалось выше:
results?search_query=alex%2Bvoievod&page=2
Что мне не хватает?
пространство
Значение по умолчанию для этого истина, так как большинство людей предпочитают, чтобы знаки плюс в строках запроса были преобразованы в пробелы. Это стандарт
практиковать использование знаков плюс для представления пробелов в строках запроса
избегайте страшных% 20, чтобы анализатор был обновлен и по умолчанию
преобразует знаки плюс в пробелы. Тем не менее, эта функция может быть отключена
если вы решите, что вам нужны буквальные плюсы в строках запроса.
<script type="text/javascript"> $.query = { spaces: false }; </script>
<script src="<?=base_url();?>resources/js/libs/jquery.query.js"></script>
Внутри jquery.query.js:
new function(settings) {
// Various Settings
var $separator = settings.separator || '&';
var $spaces = settings.spaces === false ? false : true;
alert($spaces);->Returns the value as set, true or false.
var $suffix = settings.suffix === false ? '' : '[]';
Я немного прочитал код, но не могу найти, где находится ошибка, учитывая, что spaces
не имеет никакого эффекта.
Edit:
Код, который я использую с $.query
var cur_page = $.query.get('page');
if (cur_page.length == 0){var next_page = cur_page + 2;}
else { var next_page = cur_page + 1; }
var page = $.query.set('page', next_page).toString();
alert(page);
/*window.location.replace(page);*/
Я собираюсь попробовать связаться с создателем этого плагина: https://github.com/blairmitchelmore/jquery.plugins/blob/master/jquery.query.js