Получить сохраненное значение из браузеров - PullRequest
1 голос
/ 08 июня 2019

Как получить сохраненное значение из браузера в jquery, я использую этот скрипт.

require(['jquery', 'jquery/jquery.cookie', 'jquery/ui'], function($){

    setTimeout(function(){
      console.log($('input#email').val());

        var subjectLength = $('#email').val().length;
        if(subjectLength > 0) {
            console.log('Value Available');
        } else {
            console.log('Value not  Available');
        }


    }, 3000);

});

1 Ответ

0 голосов
/ 08 июня 2019

Похоже, что вы пытаетесь написать или обновить cookie через JavaScript в Magento. Вы также можете сделать это с помощью PHP, используя Session или Cookies. Поскольку вы сказали «из браузера», я предполагаю, что вы хотите решение JavaScript.

По сути, у вас будет функция Setter и Getter для установки имени, значения и срока действия файла cookie, а затем функция для получения значения из файла cookie с определенным именем. Иногда у вас также может быть функция очистки или удаления, которая в основном устанавливает срок действия файла cookie в прошлом.

Я нашел следующее, что поможет вам: https://magento.stackexchange.com/questions/163345/magento-2-how-to-use-cookie

require(['jquery', 'jquery/jquery.cookie', 'jquery/ui'], function($){
  setTimeout(function(){
    console.log($('input#email').val());
    var subject = $('#email').val();
    var date = new Date();
    var minutes = 60;
    date.setTime(date.getTime() + (minutes * 60 * 1000));
    if($.cookie('subject').length) {
      console.log('Updating Cookie Value: "subject", "' + subject + '"');  
      $.cookie('subject', subject, {path: '/', expires: date});
    } else {
      console.log('Setting Cookie Value: "subject", "' + subject + '"');  
      $.cookie('subject', subject, {path: '/', expires: date});
    }
  }, 3000);
});

Вы можете расширить это своими собственными функциями, если вы планируете делать это много.

function setCookie(k, v, e){
  var check_cookie = $.cookie(k); // Get Cookie Value
  var date = new Date();
  var minutes = e || 60;
  date.setTime(date.getTime() + (minutes * 60 * 1000));
  if(check_cookie.length){
    $.cookie(k, '', {path: '/', expires: -1});
  }
  $.cookie(k, v, {path: '/', expires: date});
}

function getCookie(k){
  return $.cookie(k);
}

function deleteCookie(k){
  $.cookie(k, '', {path: '/', expires: -1});
}

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...