Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> serialize или serializeArray, Как сделать хеш таблицу из стринга? 
V
    Опции темы
t77
  Дата 15.2.2012, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 27.7.2008

Репутация: нет
Всего: нет



Доброе время суток.
Имеется URL в виде стринга.., что то вроде этого:
Код

userId=1&title=abcd&orderBy=hitlist desc&keywords=kkkkkaa

Необходимо произвести инкондинк(encode), каждому значению, в данном стринге.
Код

1
abcd
hitlist desc
kkkkkaa


Тоесть, значение, каждого параметра должно быть обработано.
Функция обработки, для значения параметра имеется!

Задача заключается в том, каким образом, можно пройтись по всем значениям параметров и обработать их ??

На первый взгляд, вроде, все просто...
Можно, использовав методы стринга (substring, indexOf, ...),  но придется писать много строк кода, для того, чтобы добиться желаемого.

Задался вопросом, как это можно сделать, средствами JQUERY ??
Короче говоря, мне в полне подошла бы функция serializeArray()...
Но, почему то, не могу ее применить к стрингу !?
Код

myString.serializeArray() 

ругается !!!

Что я делаю не так и как это сделать правильно ?
Спасибо.

PM MAIL   Вверх
t77
  Дата 15.2.2012, 17:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 27.7.2008

Репутация: нет
Всего: нет



Спрошу еще проще... 
как можно сделать из :
Код

myString = "userId=1&title=abcd&orderBy=hitlist desc&keywords=kkkkkaa"


Следующее:
Код

myObject = {userId:1, title:abcd, orderBy:hitlist desc, keywords:kkkkkaa}


спасибо
PM MAIL   Вверх
$дмитрий
Дата 15.2.2012, 17:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1037
Регистрация: 19.6.2004

Репутация: 2
Всего: 45



Цитата

myString.serializeArray() 

Серилизовать объект нужно? http://phpjs.org/functions/serialize:508

Добавлено через 3 минуты и 9 секунд
Теперь понятно что требуется, вот http://stevenlevithan.com/demo/parseuri/js/
PM MAIL   Вверх
ksnk
Дата 15.2.2012, 17:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



Цитата(t77 @  15.2.2012,  17:28 Найти цитируемый пост)
как можно сделать из 

Код

var x,res={};
var myString = "userId=1&title=abcd&orderBy=hitlist desc&keywords=kkkkkaa";
var reg=/(\w+)=([^&]*)/g;
while(x=reg.exec(myString )) res[x[1]]=x[2];
console.log(res);



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
t77
  Дата 15.2.2012, 18:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 27.7.2008

Репутация: нет
Всего: нет



Супер, то что нужно! smile 
Реально, регулярные выражения рулят!
ksnk, скажите пожалуйста, каким образом, можно пробежаться по всем значениям , объекта res и изменить их, не зависимо от названия параметра ?

А после этого, необходимо вернуть данный объект в стринг.
PM MAIL   Вверх
502
Дата 15.2.2012, 18:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Я всегда прав
*


Профиль
Группа: Участник
Сообщений: 134
Регистрация: 16.7.2011

Репутация: 1
Всего: 4



Цитата(t77 @  15.2.2012,  18:21 Найти цитируемый пост)
ksnk, скажите пожалуйста, каким образом, можно пробежаться по всем значениям , объекта res и изменить их, не зависимо от названия параметра ?

For...In
PM MAIL   Вверх
t77
  Дата 15.2.2012, 18:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 459
Регистрация: 27.7.2008

Репутация: нет
Всего: нет



красавчик!
Спасибо всем! особенно ksnk и 502 !!!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0701 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.