Как удалить данные в Localstorage

Что мне нужно

  • Мне нужно переключить изображение на клике.
  • нравится, если пользователь выбирает любимый выбор & тогда это помечает, что любимое изображение изменено, и данные удалены из localalstoarge.

HTML-код

<div  style="display:block; float:right; width:auto; color:#7c7c7c;">
<a href="javascript:void(0);" class="favourate_dextop" id="fav'.$data[$k]['id'].'"  onClick=" favaorite('.$data[$k]['id'].',\''.$name_event.'\',\''.$event_city.'\',\''.$event_country.'\',\''.$event_urls.'\',this)"></a>
</div>

JS код

function favaorite(sess_id,name,city,country,event_url,pointer){

var eventData;
//is anything in localstorage?
if (localStorage.getItem('eventData') === null) {
eventData = [];
} else {
// Parse the serialized data back into an array of objects
eventData = JSON.parse(localStorage.getItem('eventData'));
//alert(eventData);
$.each(eventData, function(key, value){
//console.log(value);
var  imageUrl='http://im.gifbt.com/images/star1_phonehover.png';
//var  imageUrl='http://im.gifbt.com/images/star1_phone.png';

$(pointer).closest('.evt_date').find('.favourate_dextop').css('background-image', 'url("' + imageUrl + '")');
//$(pointer).closest('.evt_date').find('.favourate_dextop').css('background-image', 'url("' + imageUrl + '")');
});

}
var details={};

details.sess_id=sess_id;
details.name=name;
details.city=city;
details.country=country;
details.event_url=event_url;

// Push the new data (whether it be an object or anything else) onto the array
eventData.push(details);

// Alert the array value
//alert(eventData);  // Should be something like [Object array]
// Re-serialize the array back into a string and store it in localStorage
var jsondata=localStorage.setItem('eventData', JSON.stringify(eventData));}

проблема

  • Я новичок в локальном хранилище. Мне нужно знать, как я могу удалить данные из строки json.
  • Я реализовал добавить в любимое теперь мне нужно отметить фаворитом.

данные хранятся:

[{
"sess_id":182104,
"name":"AUTOMECH FORMULA",
"city":"Cairo",
"country":"Egypt",
"event_url":"automech-formula"},]

0

Решение

Для удаления данных из локального хранилища вы используете localStorage.removeItem ( ‘itemNam’)

пример

localStorage.setItem('name','hello');

удалить элемент имени из локального хранилища, которое вы используете

localStorage.removeItem('name');

НО ЕСЛИ ВАШ ВОПРОС — КАК УДАЛИТЬ ДАННЫЕ ИЗ ОБЪЕКТА JSON, ТОГДА У ВАС ДВА МЕТОДА

1: изменение исходного объекта json

удалить originalJson.attributeName

   originalJson = {name:'myname',age:30};//our object to test with

пример :

   delete originalJson.age //in this case originalJson.age is no more available

2: не меняйте исходный объект и сделайте другую копию вместо этого

originalJson2 = JSON.stringify(originalJson);
originalJson2 = JSON.parse(originalJson2);
delete originalJson2.age //originalJson.age is available but originalJson2.age is not available

здесь : jsfiddle

1

Другие решения

давайте предположим, что sess_id — ваш уникальный идентификатор для событий

function unfavorite(sess_id){

var eventData = localStorage.getItem('eventData');

//is anything in localstorage?
if (localStorage.getItem('eventData') === null) {
console.log('invalid event');
}
eventData = JSON.parse(eventData);

// Keep all without the one with specified sess_id
$.grep(eventData, function(value) {
return value.sess_id != sess_id;
});

var jsondata=localStorage.setItem('eventData', JSON.stringify(eventData));
}
0

По вопросам рекламы [email protected]