Установить cookie без обновления страницы

Я показываю наложение jQuery, когда пользователи впервые посещают определенную страницу

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

Я хочу установить cookie, что пользователь не хочет видеть наложение снова

можно ли установить cookie без обновления страницы?

Я собирался сделать AJAX-вызов обратно на сервер, а затем установить cookie в ответ заголовки, но я думаю, они не будут установлены в запросе/ответе Ajax?

безопасно / нормально устанавливать cookie исключительно из javascript? Или это плохая идея?

какие-то другие варианты?

3 ответов


нет причин, по которым вызов AJAX не может установить cookie. Это просто http-запрос.

AJAX запросы получить и установить куки, как и любой другой HTTP-запрос


вы можете использовать jQuery Cookie плагин.

пример:

function setCookieFilters() {
    var $filtersContent = $(".dynamic-filters");
    if ($filtersContent.length > 0) {
        if ($filtersContent.css("display") == "none") {
            $.cookie("isUsingFilters", "true", { expires: 7 });
        }
        else {
            $.cookie("isUsingFilters", "false", { expires: 7 });
        }
    }
}

вы также можете просто получить / установить cookie в обычном старом javascript: создать и сохранить Cookie