как получить объект, когда он передается в url?

#javascript #jquery

#javascript #jquery

Вопрос:

Я отправляю объект в url с навигацией из одного html в другой.Но при извлечении я не могу получить объект. Я отправляю запрос ajax

// данные — это объект.когда я отправляю данные, которые являются объектом, они не извлекают объект, но когда я отправляю строку, он вставляет специальные символы.

 var param1var = getQueryVariable("data");

function getQueryVariable(variable) {
    var query = window.location.search.substring(1);
    var vars = query.split("amp;");
    for (var i=0;i<vars.length;i  ) {
        var pair = vars[i].split("=");
        if (pair[0] == variable) {
            return pair[1];
        }
    }
    alert('Query Variable '   variable   ' not found');
}
 

можете ли вы подсказать, как я буду отправлять данные при переходе на другую страницу.
один из способов — хранить данные в сеансовом или локальном хранилище.Но я не хочу этого делать .. есть ли какое-либо другое решение вместо сеанса или локального хранилища?

Комментарии:

1. Вам необходимо выполнить data сериализацию, прежде чем использовать его в качестве аргумента строки запроса.

2. Почему вы не хотите использовать локальное хранилище? Он широко поддерживается и является самым простым способом сохранения данных между страницами. В противном случае вы можете отказаться от использования файлов cookie для небольших объемов строковых данных или использовать что-то на стороне сервера.

Ответ №1:

попробуй :

 var query = decodeURIComponent(window.location.search.substring(1));
 

он не будет возвращать специальные символы.

Комментарии:

1. поэтому я отправлю его в виде строки или объекта

2. он вернется в виде строки