Задать вопрос
  • Как передать данные из карточки товара на страницу товара?

    @temaweb10
    Есть такая вещь как GET Parameter , его пример www.yourshop.com/index.html*?name1=value1&name2=value2 , get параметры в этой сыллке name1 и name2 , есть сыллка в страницы товара , я предлагаю в эту сыллку установить get параметры , ну кончено же без js не обойтись )))
    Пример сыллки на товар www.yourshop.com/index.html*?article=3423&price=1999

    Функция на javascript которая может получить get parametr по его названию
    function getAllUrlParams(url) {
    
        // извлекаем строку из URL или объекта window
        var queryString = url ? url.split('?')[1] : window.location.search.slice(1);
      
        // объект для хранения параметров
        var obj = {};
      
        // если есть строка запроса
        if (queryString) {
      
          // данные после знака # будут опущены
          queryString = queryString.split('#')[0];
      
          // разделяем параметры
          var arr = queryString.split('&');
      
          for (var i=0; i<arr.length; i++) {
            // разделяем параметр на ключ => значение
            var a = arr[i].split('=');
      
            // обработка данных вида: list[]=thing1&list[]=thing2
            var paramNum = undefined;
            var paramName = a[0].replace(/\[\d*\]/, function(v) {
              paramNum = v.slice(1,-1);
              return '';
            });
      
            // передача значения параметра ('true' если значение не задано)
            var paramValue = typeof(a[1])==='undefined' ? true : a[1];
      
            // преобразование регистра
            paramName = paramName.toLowerCase();
            paramValue = paramValue.toLowerCase();
      
            // если ключ параметра уже задан
            if (obj[paramName]) {
              // преобразуем текущее значение в массив
              if (typeof obj[paramName] === 'string') {
                obj[paramName] = [obj[paramName]];
              }
              // если не задан индекс...
              if (typeof paramNum === 'undefined') {
                // помещаем значение в конец массива
                obj[paramName].push(paramValue);
              }
              // если индекс задан...
              else {
                // размещаем элемент по заданному индексу
                obj[paramName][paramNum] = paramValue;
              }
            }
            // если параметр не задан, делаем это вручную
            else {
              obj[paramName] = paramValue;
            }
          }
        }
      
        return obj;
    }
    console.log(getAllUrlParams().price)
    Ответ написан